Commit Graph

39 Commits

Author SHA1 Message Date
Hördle Bot
1a8177430d feat: add health check API endpoint 2025-11-26 23:37:40 +01:00
Hördle Bot
301dce4c97 Fix: Audio player skip behavior and range requests 2025-11-26 10:58:04 +01:00
Hördle Bot
0e313db2e3 Implement News System with Admin UI and Homepage Integration 2025-11-25 11:52:52 +01:00
Hördle Bot
3e647cd44b Fix version API to read version.txt directly 2025-11-25 10:22:12 +01:00
Hördle Bot
ce413cf6bc feat: Implement Docker version reporting by extracting git tag to an environment variable for API consumption. 2025-11-25 09:41:50 +01:00
Hördle Bot
eb3d2c86d7 feat: Extract footer into a new component and add dynamic application version display via a new API route. 2025-11-25 09:20:01 +01:00
Hördle Bot
41ce6c12ce feat: Implement genre activation/deactivation with UI controls and main page filtering. 2025-11-25 00:20:29 +01:00
Hördle Bot
a744393335 feat: remove iTunes release year refresh API endpoint and UI from admin page 2025-11-25 00:09:28 +01:00
Hördle Bot
67cf85dc22 feat(song): add option to exclude songs from global visibility and improve admin upload validation 2025-11-24 19:59:47 +01:00
Hördle Bot
326023a705 feat: remove MusicBrainz integration and exclusively use iTunes for song release years 2025-11-24 18:53:03 +01:00
Hördle Bot
7f455053e7 fix: Improve iTunes API call success rate by increasing rate limit delay and adding a User-Agent header. 2025-11-24 14:36:27 +01:00
Hördle Bot
3309b5c5ee feat: implement iTunes API for release year detection and bulk refresh 2025-11-24 14:23:07 +01:00
Hördle Bot
2d6481a42f Security audit improvements: authentication, path traversal protection, file validation, rate limiting, security headers 2025-11-24 09:34:54 +01:00
Hördle Bot
7b975dc3e3 Finalize scoring system, release year integration, and fix song deletion 2025-11-23 20:37:23 +01:00
Hördle Bot
d280106336 Add duplicate detection with fuzzy matching and fix artist metadata extraction 2025-11-23 16:06:55 +01:00
Hördle Bot
80e6066c17 Add subtitles to Genres and Specials 2025-11-23 15:20:12 +01:00
Hördle Bot
4d3032df36 feat: implement song rating system with admin view and user persistence 2025-11-23 10:34:45 +01:00
Hördle Bot
2a38bce02c feat(specials): add curator field 2025-11-23 02:25:45 +01:00
Hördle Bot
c05ead4493 fix(api): include song count in specials list 2025-11-23 02:15:12 +01:00
Hördle Bot
e9526918e1 feat(specials): add launch and end dates for scheduling 2025-11-23 02:09:49 +01:00
Hördle Bot
b27d5e49c9 fix(api): update songs endpoint to work with SpecialSong model 2025-11-23 00:57:02 +01:00
Hördle Bot
5944c14614 fix(api): await params in Next.js 15 dynamic routes 2025-11-23 00:53:36 +01:00
Hördle Bot
587fa59b79 feat(special-curation): complete implementation with all components
- Database: SpecialSong model with startTime
- Backend: API endpoints for curation
- Admin: Waveform editor and curation page
- Game: startTime support in AudioPlayer
- UI: Curate button in admin dashboard
2025-11-23 00:50:35 +01:00
Hördle Bot
77a769fb91 fix(admin): filter duplicate daily puzzles in dashboard 2025-11-23 00:01:06 +01:00
Hördle Bot
aff752d4cb feat(security): implement bcrypt hashing for admin password and cleanup Dockerfile 2025-11-22 22:37:46 +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
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
10cab22cfe Fix: Add batch processing to prevent timeout on large song libraries 2025-11-22 12:11:11 +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
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
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
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
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
c1bd141042 Initial commit: Hördle Web App 2025-11-21 12:25:19 +01:00