Session mode — changes live in this tab only.
Command Center

Admin Panel

Manage gigs, setlists, songs, attire, and members. Opens with live Firestore data pulled in automatically. Edits happen in this session — click ↑ Publish to Firestore above to go live (attire publishes as you go, see the Attire tab for details).

Gigs
ℹ
Click any row to expand the edit form. Fields marked Venue Map URL, Route Map Embed URL, and Photo Album Share URL accept direct links — paste them in and they'll render on the public site and member portal automatically.
Loading gigs…
Setlists
ℹ
Drag songs in the list to set the official order. Click + song name pills to add songs from the song library. Members can override the order with their personal practice order in the Music Library without affecting the official setlist.
Loading setlists…
Songs
ℹ
MusicXML (fullMxl): Upload your .mxl full score to Firebase Storage, then paste the public download URL here. Do not use Google Drive — CORS policy blocks the browser from fetching it.
Per-instrument PDFs / MP3s / MIDI: Upload to Google Drive, set sharing to "Anyone with the link can view", and paste the /file/d/FILE_ID/view URL. The site converts it to a direct download URL automatically.
File naming convention: {song-slug}_{instrument-slug}.pdf · .mp3 · .mid · .mxl
Loading songs…
Standard Attire
ℹ
These items appear on the member attire page as the standard kit for all gigs. Drag rows to reorder. Gig-specific modifications are set per-gig in the Gigs tab (Attire Notes field). Saving or reordering an item will ask to publish it to Firestore immediately — after the first confirmation this session, further attire edits publish automatically.
Loading attire…
Pending Members
ℹ
Signups from the public Request Access form land here. Approve writes status: "active" directly to Firestore. Reject deletes the signup permanently. Both take effect immediately — no Publish step needed. Requests flagged Other named an instrument outside the standard list and may need a score-master's attention before you approve them.
Loading pending signups…
Music Submissions
ℹ
Members submit via Submit Music — either a MuseScore project file (.mscz) uploaded directly, or a link to a shared Drive/GitHub/Dropbox repository. Open the project file in MuseScore (or fetch it from the link) and use File → Export → Parts to get the actual .mxl/.pdf/.mp3 files, saving each with the suggested filename shown on the row, then drop them into music/{fileSlug}/ — create the song record first if this is a new song, then run the validator and deploy — see the SOP. Approve just marks a submission reviewed; it does not export files or touch Firestore song records for you. Reject keeps the record (for history) but marks it declined.
Loading submissions…
Song Tasks
ℹ
Any signed-in member can leave a note on a song's page — a wrong note in a part, a recording that needs redoing, anything at all — via the Notice Something That Needs Work? box. Notes land here as a simple to-do list; nothing changes on the song itself. Mark Done just flips the status (it doesn't fix anything for you); Delete removes a task permanently once it's actually handled.
Loading tasks…
Members
ℹ
Member records control access to the member portal. The email address must match the member's Google account exactly — it becomes the Firestore document ID. Any member with a record — active or pending — can sign in; status is shown to the member for personalization but does not gate access. Set status to inactive to revoke a former member's access. Saves here go to the session — click ↑ Publish to Firestore above to take effect (deletes are immediate, see the row's Delete button).
Loading members…