Commit Graph

149 Commits

Author SHA1 Message Date
Hördle Bot
a6cfa833e3 refactor(admin): remove separate Artist column from Song Library 2025-11-22 22:27:10 +01:00
Hördle Bot
cf43adf63b Restrict native share dialog to mobile devices, use clipboard copy on desktop 2025-11-22 20:17:15 +01:00
Hördle Bot
58e9b4fa60 Improve share button: mobile-friendly Web Share API, icon button, fallback clipboard 2025-11-22 19:39:32 +01:00
Hördle Bot
328c8fe98a Prevent multiple guess submissions per attempt 2025-11-22 19:35:12 +01:00
Hördle Bot
5d5a75a735 Add genre/special-specific URLs to share functionality 2025-11-22 19:30:49 +01:00
Hördle Bot
7fc1c2c201 Fix audio playback for newly uploaded files by using dynamic API route 2025-11-22 17:53:37 +01:00
Hördle Bot
6086e1903c Fix audio file caching to allow immediate playback of newly uploaded songs 2025-11-22 17:42:20 +01:00
Hördle Bot
21b53a692b Fix healthcheck to use curl instead of wget for Alpine compatibility 2025-11-22 16:57:43 +01:00
Hördle Bot
9a072061a1 Add deployment script and health checks for zero-downtime updates 2025-11-22 16:56:30 +01:00
Hördle Bot
c612da6371 Update Daily Puzzles table buttons to match Song Library style 2025-11-22 16:51:01 +01:00
Hördle Bot
fdd5463391 Add collapsible Daily Puzzles management table to admin area 2025-11-22 16:49:00 +01:00
Hördle Bot
ae9e4c504e Add Song of the Day filter and badges to Admin Song Library 2025-11-22 16:38:15 +01:00
Hördle Bot
903d626699 Implement Specials feature, Admin UI enhancements, and Database Rebuild tool 2025-11-22 16:09:45 +01:00
Hördle Bot
c270f2098f Feat: Add genre filter to song library table 2025-11-22 12:56:42 +01:00
Hördle Bot
7d117d3bd4 UI: Update admin dashboard heading 2025-11-22 12:28:03 +01:00
Hördle Bot
f8a495920c Feat: Show genre name in puzzle title 2025-11-22 12:27:12 +01:00
Hördle Bot
10cab22cfe Fix: Add batch processing to prevent timeout on large song libraries 2025-11-22 12:11:11 +01:00
Hördle Bot
15746f404a Chore: Update Docker setup and walkthrough 2025-11-22 11:56:22 +01:00
Hördle Bot
8c720e287f Feat: Genre system with per-genre daily puzzles 2025-11-22 11:56:16 +01:00
Hördle Bot
dc69fd1498 Feat: AI-powered genre categorization with OpenRouter 2025-11-22 11:55:50 +01:00
Hördle Bot
e56d7893d7 Docs: Add Nginx example configuration 2025-11-22 10:36:57 +01:00
Hördle Bot
f20ba02c02 Docs: Add Gotify configuration to README 2025-11-22 10:35:35 +01:00
Hördle Bot
f8fb3ccf69 Feat: Auto-play on skip & Gotify notifications 2025-11-22 10:34:22 +01:00
Hördle Bot
4f8524c286 Fix daily puzzle rotation timezone issue
- Added lib/dateUtils.ts for consistent timezone handling
- Updated app/page.tsx and app/api/daily/route.ts to use Europe/Berlin timezone
- Updated lib/gameState.ts to sync client-side daily check with server time
- Exposed TZ env var to client in next.config.ts
2025-11-22 00:44:14 +01:00
Hördle Bot
3e0fa430a3 feat(admin): add custom page title 'Hördle Admin Dashboard' 2025-11-21 22:13:44 +01:00
Hördle Bot
e931787752 fix: add range request support and proper headers for large MP3 playback 2025-11-21 22:06:24 +01:00
Hördle Bot
3f47fac276 feat: add configurable timezone for daily puzzle rotation with logging 2025-11-21 21:53:22 +01:00
Hördle Bot
75a8a63b21 feat: improve UX with modern skip/solve buttons, ID sorting, and URL-safe filenames 2025-11-21 21:44:16 +01:00
Hördle Bot
3f544bf77c feat(admin): add MP3 validation with detailed audio info and cover detection 2025-11-21 21:16:25 +01:00
Hördle Bot
1d2a57352f feat(admin): add persistent login and improve audio playback error handling 2025-11-21 20:52:08 +01:00
Hördle Bot
95a3b09f52 feat: add 7th guess with 60s unlock and update docs 2025-11-21 19:25:38 +01:00
Hördle Bot
7ce45be90d feat(admin): display total song count in library header 2025-11-21 18:12:31 +01:00
Hördle Bot
24e4e3dfa5 docs: update README with PWA support and migration instructions 2025-11-21 17:54:28 +01:00
Hördle Bot
f4e953ecd1 feat: add PWA manifest and viewport configuration 2025-11-21 17:52:31 +01:00
Hördle Bot
b9cebd46d5 docs: Update README with new features (Cover Art, Migration, Admin improvements) 2025-11-21 16:30:12 +01:00
Hördle Bot
f22aea6341 fix: Force dynamic rendering and improve error handling
- Add 'force-dynamic' to app/page.tsx to ensure daily puzzle is generated on every request
- Improve error message in Game component when no puzzle is available
- Add logging to getDailyPuzzle for debugging
2025-11-21 16:25:01 +01:00
Hördle Bot
616b721183 feat: improve daily puzzle generation with a global Prisma client, detailed logging, and race condition handling. 2025-11-21 16:18:26 +01:00
Hördle Bot
c1a0157925 fix: Ensure cover upload directory exists and has proper recursive permissions. 2025-11-21 16:08:28 +01:00
Hördle Bot
0353a7d8aa build: copy node_modules into the final Docker image. 2025-11-21 15:59:52 +01:00
Hördle Bot
29d43effe3 feat: Add cover art support and auto-migration
- Extract cover art from MP3s during upload
- Display cover art in game result screens (win/loss)
- Add coverImage field to Song model
- Add migration script to backfill covers for existing songs
- Configure Docker to run migration script on startup
2025-11-21 15:51:22 +01:00
Hördle Bot
0c9508076f fix: Update page title and description to Hördle 2025-11-21 14:56:37 +01:00
Hördle Bot
cbfd0c1798 feat: Add sortable 'Added' column to admin table
- Display upload date in German format (DD.MM.YYYY)
- Column is sortable by clicking header
- Uses existing createdAt field from database
2025-11-21 14:46:59 +01:00
Hördle Bot
8540c7be54 fix: Run Docker container as root user to avoid permission issues 2025-11-21 14:44:05 +01:00
Hördle Bot
28e716c52b fix: Docker deployment with Prisma 6.19.0
- Use local Prisma version in Dockerfile instead of npx
- Pin Prisma version in docker-compose to 6.19.0
- Fix data directory permissions for SQLite database
- Update docker-compose.example.yml with working configuration
2025-11-21 14:22:28 +01:00
Hördle Bot
b81ad77042 build: Remove explicit Docker Compose version '3' declaration. 2025-11-21 14:05:08 +01:00
Hördle Bot
01bcf179f9 feat: Improve admin dashboard and add weighted song selection
- Replace filename column with activation count
- Add pagination (10 items per page) and search functionality
- Add delete functionality (removes DB entry and file)
- Remove manual title/artist input (auto-extract from ID3 tags)
- Replace text buttons with emoji icons (Edit, Delete, Save, Cancel)
- Implement weighted random selection for daily puzzles
- Add custom favicon
- Fix docker-compose.yml configuration
2025-11-21 13:56:55 +01:00
Hördle Bot
ea26649558 feat: Add statistics tracking and fix clipboard API
- Add personal statistics with badges for each attempt count
- Track solved puzzles per attempt (1-6) and failed attempts
- Display statistics after game completion
- Fix clipboard API issue with fallback method
- Add footer with attribution
2025-11-21 13:20:45 +01:00
Hördle Bot
ed87bd8c97 Refactor: Rename docker-compose.yml to example and update README 2025-11-21 13:01:34 +01:00
Hördle Bot
c1bd141042 Initial commit: Hördle Web App 2025-11-21 12:25:19 +01:00