10 Commits

Author SHA1 Message Date
cottongin
6cfa971fa6 tweak: double choice timeout 2026-04-03 22:49:02 -04:00
cottongin
f882ab9ecc chore: include LLM/AI disclaimer 2026-04-03 22:36:21 -04:00
cottongin
93f55840a5 Add explicit filtering, fuzzy matching, reply modes, bulk actions, and refresh README
- Explicit/clean track filtering with configurable explicitMode per channel
- Last.fm spell correction and smart dual-strategy iTunes search
- Configurable queuedReplyMode and announceReplyMode (channel/private/notice)
- Per-channel announceApproved/announceRejected/announceNowPlaying toggles
- Bulk select mode for mass approve/reject/mark-played in web dashboard
- Comprehensive README rewrite covering all current features and config

Made-with: Cursor
2026-04-03 22:34:42 -04:00
cottongin
3372ce77fa Move card action buttons to top-right corner and add Mark Played to alternates
Reposition approve/reject/played buttons as absolute top-right overlay
on each card. Add Mark Played buttons to alternate match cards with a
new play-alt API endpoint, and right-align all alternate action buttons.

Made-with: Cursor
2026-03-28 12:53:33 -04:00
cottongin
7ebd22568b Add per-channel "Feeling Lucky" mode to auto-select first iTunes match
When enabled, skips the IRC disambiguation prompt and immediately
queues the top result. Remaining matches are stored as alternates
visible in the web dashboard with approve buttons.

Made-with: Cursor
2026-03-28 12:38:26 -04:00
cottongin
2f33b43bbe Add MIT license
Made-with: Cursor
2026-03-28 12:10:21 -04:00
cottongin
4fb8a5e25f Update .gitignore and untrack ignored files
Add .cursor/, .pytest_cache/, tmp/, and .DS_Store to .gitignore.
Remove .cursor/plans/ from git tracking to match new ignore rules.

Made-with: Cursor
2026-03-28 12:09:02 -04:00
cottongin
ea40251e0e Add web dashboard auth system and session management actions
Implement per-admin authentication with IRC-managed accounts
(addSongAdmin/removeSongAdmin/listSongAdmins), session-based login,
and admin presence tracking via WebSocket. Legacy webAuthToken
retained as fallback.

Add rename, clear, and delete actions for archived sessions with
themed modal confirmations (admin-only UI).

Made-with: Cursor
2026-03-28 12:02:42 -04:00
cottongin
7340d59b8e Add dashboard features and UX polish
Dashboard features round:
- Toggle label text for requests open/closed state
- URL-based channel routing (hash and path)
- Day/night/system theme with localStorage persistence
- Larger typography and album art across the app
- Session management with start/stop, archiving, and history
- Auto-approve config option per channel
- Mobile responsive layout for all new components

UX polish round:
- Auto-switch to history tab when queue empties
- Toast notifications and queue tab pulse for new requests
- Themed modal dialogs replacing native confirm/prompt calls

Database: new sessions table, session_id column on requests,
migration ordering fix for existing databases.

Made-with: Cursor
2026-03-28 11:29:53 -04:00
cottongin
6723413250 Initial commit: SongRequest Limnoria plugin
IRC song request plugin with iTunes validation, HTMX web dashboard,
WebSocket real-time updates, moderation, rate limiting, and history.

Made-with: Cursor
2026-03-28 04:43:50 -04:00