23 Commits

Author SHA1 Message Date
metatroncubeswdev
1b93816953 App Store description: drop the in-app gift line while tips are hidden on iOS
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 11:06:28 -05:00
metatroncubeswdev
295919be44 Hide the support tips on iOS until they are set up on the App Store
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-03 11:05:25 -05:00
metatroncubeswdev
5c304ec494 Fix iOS playback: attach the Android-only audio effects only on Android
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 17:50:41 -04:00
metatroncubeswdev
60506e730f MEDIA_BASE_URL is optional in Codemagic
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 17:35:03 -04:00
metatroncubeswdev
d7d3a93bae iOS playback: allow the local proxy for downloaded songs; default the media URL to the Supabase audio bucket
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 17:34:03 -04:00
metatroncubeswdev
ee8fe2bf42 App Store screenshots at the 1206x2622 size App Store Connect requires
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 16:07:19 -04:00
metatroncubeswdev
bbd83c5a10 Store screenshots for Google Play and the App Store
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 15:27:07 -04:00
metatroncubeswdev
db6abdefd3 Codemagic: pass the iOS certificate key base64-encoded and stop on signing errors
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 15:15:32 -04:00
metatroncubeswdev
b966b6c45e Codemagic: use the existing team API key integration
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 13:17:59 -04:00
metatroncubeswdev
5721eb53c9 Website deploy script and clean URLs for the legal pages
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 12:39:00 -04:00
metatroncubeswdev
b67843e00f Codemagic: automatic iOS signing via the App Store Connect API; App Store listing text
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 12:34:24 -04:00
metatroncubeswdev
d73fd2de70 nkbmusic.com marketing site with live song samples from the backend
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 10:28:38 -04:00
metatroncubeswdev
8b5f7a4744 Play Store listing: feature graphic and listing text
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 01:02:41 -04:00
metatroncubeswdev
fc989b4c77 Store release setup: app icon, launch screen, iOS config, Android signing, Codemagic
- App icon from the NK emblem (iOS set, Android adaptive icon, Play 512 icon)
- Dark launch screen on both platforms; app locked to portrait; iPhone-only
- Info.plist: display name, photo/camera reasons, export compliance
- Android release signing from key.properties or Codemagic CM_KEYSTORE_*
- codemagic.yaml: iOS to TestFlight, Android to Play internal testing
- Account deletion web page; fix trailing dot in email links
- docs/app-store-release.md: step-by-step store guide

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-31 00:06:31 -04:00
metatroncubeswdev
d257fc4c65 Support Nanga Kathai: one-time in-app gifts in local currency
Three consumable products (nk_support_small/medium/large) via Google Play
and App Store billing; a 'give more' option emails support. FAQ, Terms and
Privacy updated: v1 is free, creator accounts come in a later update.
docs/support-payments.md lists the per-country prices and store setup.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-30 19:07:26 -04:00
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