- Change middleware from 'admin' to 'auth' on hunt and quest admin pages - Add global hunt store to track current hunt ID and membership status - Use hunt store membership state to conditionally display admin UI elements - Handle fetch errors gracefully with alerts and back navigation buttons - Update admin UI logic to depend on membership state instead of user role - Add membership state update after API calls in hunt, quest, teams, and admin pages - Refactor UI templates to show error messages when fetch fails - Centralize membership logic for better authorization control in frontend
PicHunt
Create Quests and let others solve them by taking pictures!
Look at the Nuxt documentation to learn more.
Infra
This project depends on a PostgreSQL database and a S3-compliant storage bucket, that has public read enabled. Redis is not (yet) used, but may be used in the future for caching and/or synchronizing event streams for notifications.
Setup
Please use Jetbrains WebStorm and install the latest version of Bun.
Dev environment
First copy the example .env file and change the settings to your liking:
cp .env.example .env
Now start the necessary services using docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d or
bun run dev:up.
Wait for a few seconds and then migrate the database:
bun install
bunx prisma migrate deploy
Now you can start the web dev server:
bun run dev
The development server listens on http://localhost:3080:
Production
Build the application for production:
# bun
bun run build -- --preset bun
Locally preview production build:
# bun
bun run preview
Check out the deployment documentation for more information.