- ✅ Created
src/lib/db/schema.sql- Single source of truth for database structure - ✅ Created
src/lib/db/schema.ts- Drizzle ORM schema with all tables:- users
- lobbies
- lobby_participants
- songs
- ratings
- messages
- friends
- ✅ Created
src/lib/db/index.ts- Database connection - ✅ Created
drizzle.config.ts- Drizzle configuration - ✅ Added database scripts to package.json
- ✅ Set up next-intl with routing configuration
- ✅ Created translation files for 5 languages:
src/messages/en.jsonsrc/messages/de.jsonsrc/messages/pt.jsonsrc/messages/fr.jsonsrc/messages/es.json
- ✅ Configured middleware for locale routing
- ✅ Set up
[locale]folder structure in app router
- ✅ Created Spotify-themed landing page with:
- Hero section with background image support
- About section
- How-To section with step visualization
- Footer links (Privacy, Imprint, Terms, Terms of Use)
- "Let's Play" CTA button linking to login
- ✅ Fully internationalized with translation keys
- ✅ Supabase client configuration (browser & server)
- ✅ Supabase middleware setup
- ✅ Spotify Web API client
- ✅ Stripe client configuration
- ✅ Environment variable template (.env.example)
- ⏳ Supabase Auth configuration
- ⏳ Google OAuth setup
- ⏳ Magic Link implementation
- ⏳ Login pages
- ⏳ User profile management (name, avatar)
- ⏳ Navbar component with logo
- ⏳ User dropdown menu
- ⏳ Protected route handling
- ⏳ Lobby overview
- ⏳ User search
- ⏳ Friends list
- ⏳ Spotify linking
- ⏳ Mini statistics (Pro)
- ⏳ Lobby creation form
- ⏳ Category selection (Pro feature)
- ⏳ Round configuration (Pro feature)
- ⏳ User invitation system
- ⏳ Round progress indicator
- ⏳ Song suggestion interface
- ⏳ Ratings table
- ⏳ Spotify playback integration
- ⏳ Message/Chat system
- ⏳ Friends system
- ⏳ Statistics page (Pro)
- ⏳ Stripe subscription integration
- Database schema uses PostgreSQL with UUID primary keys
- All text content is internationalized - no hardcoded strings
- Design tokens are used throughout (no arbitrary values)
- Spotify green (#1DB954) used for primary CTA and accents
- Background image path:
/img/landingpage_background_4K.png
Create a .env file with:
DATABASE_URL- PostgreSQL connection stringNEXT_PUBLIC_SUPABASE_URL- Supabase project URLNEXT_PUBLIC_SUPABASE_ANON_KEY- Supabase anonymous keySUPABASE_SERVICE_ROLE_KEY- Supabase service role keyNEXT_PUBLIC_SPOTIFY_CLIENT_ID- Spotify app client IDSPOTIFY_CLIENT_SECRET- Spotify app secretNEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY- Stripe publishable keySTRIPE_SECRET_KEY- Stripe secret keySTRIPE_WEBHOOK_SECRET- Stripe webhook secret
- Set up environment variables in
.env - Run database migrations:
npm run db:pushornpm run db:migrate - Start development server:
npm run dev - Visit
http://localhost:3000(will redirect to/en)