jessy-david-dev
afe1dfd2d7
refactor(sse): improve error handling and connection cleanup
2026-04-14 16:32:32 +02:00
jessy-david-dev
90b14919c5
feat(multiplayer): replace polling with server-sent events and redis pub/sub
2026-04-14 16:00:09 +02:00
jessy-david-dev
7ecf268191
feat(leaderboard): add separate rankings for daily and blitz modes
2026-04-14 15:40:44 +02:00
jessy-david-dev
b889f3fd10
ui(solo): align topbar design with multiplayer game screen
2026-04-13 17:17:47 +02:00
jessy-david-dev
a2e1ac1c93
feat(profile): add pagination for game history (10 games per page)
2026-04-13 17:07:27 +02:00
jessy-david-dev
4614b087c3
fix: use inline svg for linkedin missing from simple-icons v16
2026-04-13 16:58:06 +02:00
jessy-david-dev
e61ea79e68
chore: replace inline SVG icons with simple-icons package
2026-04-13 16:57:22 +02:00
jessy-david-dev
190722838f
feat: add badge system with 10 achievement tiers
2026-04-13 16:47:47 +02:00
jessy-david-dev
a9821623de
fix(admin): render activity chart bars with proper height calculation
2026-04-13 16:18:11 +02:00
jessy-david-dev
c497fa1f33
ui: center target article in topbar
2026-04-13 16:02:47 +02:00
jessy-david-dev
ddf24e5714
feat(multi): display time for each player in round results
2026-04-13 15:59:34 +02:00
jessy-david-dev
7423bfc389
ui: make target article badge more visible in game topbar
2026-04-13 15:45:39 +02:00
jessy-david-dev
2a3dd6be56
fix: sync totalRounds changes to server, filter geographic admin articles, validate user exists before saving game
2026-04-13 15:42:00 +02:00
jessy-david-dev
79d90b75c4
fix(multi): use startGame for next round button in waiting phase
2026-04-13 00:20:17 +02:00
jessy-david-dev
fe703f5f8f
security: block devtools and context menu when search is disabled
2026-04-13 00:04:44 +02:00
jessy-david-dev
12031b7507
fix(article): keep references and related sections visible in wikipedia display
2026-04-13 00:01:33 +02:00
jessy-david-dev
169f71c67d
fix(multi): sync game mode changes to server in lobby
2026-04-12 23:59:40 +02:00
jessy-david-dev
064ddda23a
fix(multi): keep game screen during waiting phase for next round
2026-04-12 19:58:09 +02:00
jessy-david-dev
05e5cb04b9
fix(multi): redirect to lobby after next round and reset game; keep article detail links visible
2026-04-12 16:33:18 +02:00
jessy-david-dev
5627a4bb30
feat(multi): award points based on both clicks and time
2026-04-11 23:08:09 +02:00
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
1aad4d74a9
fix(multi): disable player prune during playing phase to prevent kick on long reads
2026-04-11 22:13:51 +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
6be8db9145
fix(multi): hide next round button when all rounds are completed
2026-04-11 22:10:04 +02:00
jessy-david-dev
c3152058ce
feat(multi): display player paths in round results screen
2026-04-11 22:08:56 +02:00
jessy-david-dev
d4bb21da5d
style(lobby): format game mode labels and search toggle
2026-04-11 22:03:00 +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
e6aa0badac
fix(types): add @types/pg for TypeScript build
2026-04-11 15:58:32 +02:00
jessy-david-dev
589e379dc3
fix(daily): remove invalid phase comparison causing TS build error
2026-04-11 15:57:35 +02:00
jessy-david-dev
fd99425269
fix(deploy): require Node 22.12+, remove better-sqlite3 remnants
2026-04-11 15:55:17 +02:00
jessy-david-dev
0fdf9dd32e
fix(deploy): add packages field to pnpm-workspace.yaml
2026-04-11 15:53:55 +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
5cd32c37e0
chore(linting): remove unused eslint-disable directives
2026-04-11 15:41:35 +02:00
jessy-david-dev
d5a66c2dac
chore(api): add explicit type casting for request payloads
2026-04-11 15:20:29 +02:00
jessy-david-dev
7d1b236b46
feat(profiles): add public player profiles with clickable leaderboard entries
...
- Create /api/users/[id] endpoint for public player stats
- Add PublicProfileScreen component with stats by mode
- Make leaderboard entries clickable to view player profiles
- Fix .gitignore to exclude .claude/ and *.db files
2026-04-11 15:17:56 +02:00
jessy-david-dev
2a382a24eb
chore: remove db files from tracking and add *.db to .gitignore
2026-04-11 15:11:03 +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
5d8f7eae45
refactor(home): rename todayEmoji to totalEmoji
2026-04-11 13:47:49 +02:00
jessy-david-dev
e9f39c572d
feat(game): add configurable rounds per room
2026-04-11 13:47:05 +02:00
jessy-david-dev
d245232497
fix(api): improve security and performance in leaderboard and rooms
2026-04-11 13:37:50 +02:00
jessy-david-dev
f62ce65858
feat: add robots.txt, sitemap, and JSON-LD structured data
2026-04-11 13:30:45 +02:00
jessy-david-dev
2db89a85ad
chore: update footer link styling for legal pages
2026-04-11 13:24:57 +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
76c7967a9a
feat: add RGPD data export and legal notices page
2026-04-10 23:09:36 +02:00
jessy-david-dev
7f9d58bdf2
fix(home): restore fixed topbar positioning
2026-04-10 22:58:45 +02:00
jessy-david-dev
a52edfd458
feat: add share buttons for victory screens (X, LinkedIn, WhatsApp)
2026-04-10 22:57:31 +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
ba7a625298
docs: update README with project info and game modes
2026-04-10 22:35:21 +02:00
jessy-david-dev
25e3e0b79b
update(auth): add authentication and layout improvements
2026-04-10 22:32:39 +02:00
jessy-david-dev
af03b32921
chore: remove instruction files and stray character
2026-04-10 22:27:57 +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
8c18984121
fix(home): make subtitle more visible
2026-04-10 19:26:47 +02:00
jessy-david-dev
2242adc011
feat(profile): add account deletion with confirmation and update privacy policy
2026-04-10 19:24:12 +02:00
jessy-david-dev
cd5f2bdf3f
feat: add privacy policy page and footer
2026-04-10 19:21:52 +02:00
jessy-david-dev
8d80d4278a
fix(profile): style logout button in red to signal destructive action
2026-04-10 19:08:25 +02:00
jessy-david-dev
d21b4e4829
fix(leaderboard): show all stats on mobile with stacked layout
2026-04-10 19:06:56 +02:00
jessy-david-dev
02dd3869d3
fix(responsive): full mobile-first pass on all screens, fix join button layout
2026-04-10 19:04:52 +02:00
jessy-david-dev
b15418e949
refactor: migrate all components to Tailwind, globals.css 1676 → 88 lignes
2026-04-10 18:58:41 +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
676e5ba756
chore(assets): clean up Next.js defaults and update logo styling
2026-04-10 17:20:04 +02:00
jessy-david-dev
e43d8bb05b
fix(home): restore logo with manually removed background
2026-04-10 16:56:46 +02:00
jessy-david-dev
741dd84324
fix(home): remove white background from logo PNG
2026-04-10 16:54:54 +02:00
jessy-david-dev
4c0cd9334e
fix(home): remove white background from logo with mix-blend-mode
2026-04-10 16:53:56 +02:00
jessy-david-dev
b72165e073
feat(home): replace text logo with WikiRush image
2026-04-10 16:53:10 +02:00
jessy-david-dev
0b71bd4f6d
fix(solo): restore dark background on setup/won phases of solo screen
2026-04-10 16:49:17 +02:00
jessy-david-dev
6378056f97
refactor(page): extract screen routing into ScreenRouter component
2026-04-10 16:47: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
58d1a43a35
refactor(config): assign config object before default export
2026-04-10 16:41:52 +02:00
jessy-david-dev
9e13d83251
feat(game): auto-save multiplayer game results when round ends
2026-04-10 16:40:33 +02:00
jessy-david-dev
3fd3f01637
feat(lobby): add clickable code copy to clipboard with visual feedback
2026-04-10 15:47:33 +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
jessy-david-dev
6a75e80e6c
chore: update .gitignore
2026-04-10 11:49:26 +02:00
jessy-david-dev
ca760cf8b0
Initial commit from Create Next App
2026-04-10 11:46:43 +02:00