8 Commits

Author SHA1 Message Date
metatroncubeswdev
d994fc733f Cover photos for albums and songs: upload in NK Admin, shown in the app
Songs without their own cover use their album's. Covers live in a public
'covers' bucket that only admins can write to.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 14:23:43 -04:00
metatroncubeswdev
7207da911c Generate web versions of Privacy Policy and Terms for nkbmusic.com
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 12:03:31 -04:00
metatroncubeswdev
ad8c4f1c6b App: speaker/Bluetooth picker, Settings & help, Privacy Policy, Terms, FAQ, song reports
- Now Playing shows where music plays and opens the phone's output switcher
- Settings hub: Wi-Fi-only downloads (default on), storage, sound, help, legal
- Privacy Policy and Terms bundled as Markdown (assets/legal), shown in-app
- 'Is this your song?' report form feeding takedown_requests (+ kind, user_id)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 12:00:16 -04:00
metatroncubeswdev
f801f91edf NK Admin: switching songs stops the previous one; player bar shows edited details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 11:46:22 -04:00
metatroncubeswdev
cf645071aa Add NK Admin dashboard (Flutter web) for admin.nkbmusic.com
Email-code sign-in for admins only; Overview with a needs-attention list;
Songs with search, playback, editing, approve/hide and bulk edit; Albums
and Singers with merge; creator applications queue. Adds the admin views,
functions and creator_applications table, a deploy-admin script and a
how-to guide. The admin nginx config no longer caches unhashed JS and
sends its security headers again.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 11:35:44 -04:00
metatroncubeswdev
d368880601 Add NK Admin web container on 127.0.0.1:18080 with placeholder page
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 10:51:14 -04:00
metatroncubeswdev
7b4239544c Add server update script and git-based update instructions
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 10:40:10 -04:00
metatroncubeswdev
178d2d00ab Nanga Kathai: Flutter app, self-hosted backend and song tools
- Flutter app (Android/iOS): home, explore, albums, search, player with
  equalizer, mini player, sign up/sign in with email codes, profile,
  encrypted offline downloads, About page
- server/: one-command deploy of self-hosted Supabase behind HestiaCP/nginx
  (or Caddy), migrations, backups, email templates
- supabase/migrations: schema, row-level security, profiles
- tools/: song scanner and importer

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 10:39:26 -04:00