Commit Graph
19 Commits
Author SHA1 Message Date
jessy-david-dev b1fcbbdb04 feat(multi): add configurable time limit per round with countdown display 2026-04-11 22:41:40 +02:00
jessy-david-dev 54c4400393 feat(multi): add go back button with extra click penalty 2026-04-11 22:30:47 +02:00
jessy-david-dev d268905f2d style: apply prettier formatting across codebase 2026-04-11 22:25:34 +02:00
jessy-david-dev b76fbf8789 fix(multi): stay on game screen between rounds instead of redirecting to lobby 2026-04-11 22:19:25 +02:00
jessy-david-dev 1153f574a4 fix(multi): prevent player kick on slow load and background tab throttling 2026-04-11 22:12:39 +02:00
jessy-david-dev ede083f881 fix(multi): restrict search and game settings to room host only 2026-04-11 22:02:06 +02:00
jessy-david-dev 0401cdffe6 feat(multi): add game mode selection and surrender button for all_finish mode 2026-04-11 21:58:35 +02:00
jessy-david-dev 552bb17c15 feat(rooms): migrate multiplayer room storage from memory to PostgreSQL 2026-04-11 17:37:56 +02:00
jessy-david-dev 875a299cd4 chore(db): migrate from SQLite to PostgreSQL
- Change Prisma provider from sqlite to postgresql
- Replace better-sqlite3 adapter with @prisma/adapter-pg
- Update prisma.config.ts and lib/prisma.ts for PostgreSQL
- Add DATABASE_URL to .env.local
- Regenerate Prisma client for PostgreSQL
- Recreate migrations for PostgreSQL database
2026-04-11 15:50:44 +02:00
jessy-david-dev 8ff64b3470 feat(admin): add admin panel with user management, daily puzzle CRUD, and activity graph
- Add admin page at /admin (restricted to ADMIN_EMAIL via proxy)
- Implement user ban/unban and deletion
- Add daily puzzle creation, modification, deletion
- Include 14-day activity chart with hover details
- Add User.banned field to schema and migrate database
- Block banned users from logging in
- Add ADMIN_EMAIL to .env.local configuration
- Update Prisma client after schema changes
2026-04-11 15:10:08 +02:00
jessy-david-dev e9f39c572d feat(game): add configurable rounds per room 2026-04-11 13:47:05 +02:00
jessy-david-dev b2f28bbb75 feat: add search toggle for game setup and improve RGPD compliance 2026-04-11 13:24:30 +02:00
jessy-david-dev 19d9afd2b4 feat: add 404 page, migrate to UUID v7, and consolidate DB 2026-04-10 22:48:15 +02:00
jessy-david-dev 47b8de0b67 feat: add about page, global stats counter, and blitz screen updates
- Create about page with game modes, technologies, and paliers
- Add stats API endpoint for global game counter
- Update home screen with emoji-based tier system (🌱-🚀)
- Rewrite BlitzScreen to match new puzzle-based win/lose phases
- Add simple-icons package for tech stack icons
- Update metadata with wikirush.xyz domain
- Fix em dashes to hyphens throughout codebase
- Update footer with privacy and about links
2026-04-10 22:26:24 +02:00
jessy-david-dev dc12abf796 feat: add daily challenge and blitz mode (2min speedrun) 2026-04-10 21:41:49 +02:00
jessy-david-dev aed510afd5 feat(leaderboard): add global rankings screen with solo/multi/all filters 2026-04-10 17:30:13 +02:00
jessy-david-dev 8f62b7edbf refactor(page): extract all effects into useGameEffects hook 2026-04-10 16:45:57 +02:00
jessy-david-dev 4f6e793c74 refactor(page): extract handlers and utils into dedicated modules 2026-04-10 16:44:24 +02:00
jessy-david-dev dc09658fdb feat: add user accounts, authentication, and game history with Prisma 7
- Implement user registration and login with NextAuth v5 (email/password, JWT)
- Add authentication modal in UI with login/register tabs
- Create user profile screen showing game statistics and history
- Integrate Prisma 7 ORM with SQLite database for data persistence
- Store game results (mode, path, clicks, time) in database
- Auto-save completed games only when user is authenticated
- Separate business logic into reusable hooks (useSoloGame, useMultiGame)
- Organize UI into composable screen components (HomeScreen, SoloScreen, ProfileScreen, etc)
- Add session persistence across F5 refresh for solo and multiplayer
- Style auth modal, account button, and profile stats dashboard
2026-04-10 15:43:07 +02:00