Commit Graph

8 Commits

Author SHA1 Message Date
Brian Fertig fa118448c6 Updated PWA 2026-05-02 17:00:03 -06:00
Brian Fertig 6be01104cb Updated PWA player 2026-04-22 19:52:10 -06:00
Brian Fertig cb2ff2492f feat: add playlist top genres and similar playlists
- Add `top_genres` column to playlists table to store the top 3 genres
- Implement `computeTopGenres`, `updateTopGenres`, and `reindexAllGenres` in playlists service
- Add "Similar Playlists" section to public playlist view based on genre overlap
- Display genre tags on playlist details page
- Add admin panel route to re-index all playlist genres
- Update social tooltip positioning to use fixed positioning for better visibility
- Add CSS styles for genre tags and track numbers
- Increment service worker cache version
2026-04-19 12:10:39 -06:00
Brian Fertig 569c432fb5 feat: implement preloading of next track in queue
- Add a hidden `preloadAudio` element to buffer the next song in the queue
- Automatically preload the next track after the current one starts playing
- Update service worker cache version to v6 to ensure fresh assets are fetched
2026-04-18 16:08:54 -06:00
Brian Fertig a4954dfaa8 feat: add playlist cover generation and service worker updates
- Add database migration for `generated_playlist_covers` table to track playlist cover jobs
- Implement backend routes for generating, polling, and applying playlist cover art via ComfyUI
- Add `comfyui_node_image_seed` setting to allow configurable seeds for image generation
- Update UI to show "Generate Cover Art" link on playlist forms when image generation is enabled
- Add service worker update notification banner with refresh and dismiss options
- Enhance player with push notifications for now-playing updates
- Update service worker to handle notification clicks and improve caching strategy
2026-04-18 09:18:03 -06:00
Brian Fertig 8170cfb7a2 feat: add social features, user uploads, AI music generation, and PWA enhancements
- Add social features: like/favorite songs and playlists, notifications, and public profile pages
- Enable user music: logged-in users can upload songs and create playlists with visibility controls and NSFW flag
- Implement AI music generation via ComfyUI with per-user rate limiting, workflow configuration, and optional cover art generation
- Expand admin panel for user management and AI settings
- Enhance PWA support: lock-screen controls, background playback, and visualizer
- Add email verification via SMTP and avatar cropping
- Update package version to 1.0.0 and bump service worker cache
2026-04-17 20:12:34 -06:00
Brian Fertig 024c3a5e40 feat: add NSFW flag and visibility controls for explicit content
- Add `is_nsfw` column to `songs` and `playlists` tables
- Implement NSFW checkbox in song/playlist upload and edit forms
- Enforce NSFW content visibility: block unauthenticated users from viewing/streaming NSFW songs/playlists
- Filter NSFW content from public-facing lists (recent, popular, liked, etc.) unless user is logged in
- Add VIP-only visibility option for songs/playlists (admin/VIP users only)
- Display "EXPLICIT" badge on NSFW items in UI
- Add CSS styling for NSFW badge
- Update service layer to handle NSFW flag in CRUD operations and queries
2026-04-16 19:55:26 -06:00
Brian Fertig 428cfb1008 feat: add PWA support and refine creativity parameter handling
- Register service worker (`sw.js`) with cache-first static assets and network-first HTML pages
- Update `site.webmanifest` with app name, colors, icons at `/static/`, and standalone display mode
- Add `<meta name="theme-color">` in layout for browser UI theming
- Simplify creativity slider: change range from 0–10 to 3.0–7.0 (step 0.5), aligning frontend and backend logic
- Adjust `generate.js` route and `generation.js` service to accept direct temperature values (3.0–7.0) instead of scaled inputs
2026-04-13 19:42:30 -06:00