Repository navigation
Adding and Editing Songs
Step-by-step walkthrough to add new songs or edit existing ones in GraceChords.
Songs are stored in the Supabase songs table. The song editor (/portal/editor) is the primary interface for adding and editing songs. Any signed-in user can open it: editors and above save directly, while users submit their changes for review. (/editor is the Editor Portal landing page for editors.)
- Open
/portal/editor(sign-in required). When you are already editing a song, click New Song for a blank form. - Fill in the Metadata panel:
- Title, Key, and at least one Tag are required.
- Optional: Artist, Country, Language, Time Signature, Tempo (BPM), YouTube ID or URL.
- Write the lyrics and chords in the ChordPro Editor panel. Metadata lives in the form fields, not in
{title:}/{key:}directives in the body.- Alternatively, click Import ChordPro to load a
.chordpro/.pro/.chofile; its{title},{artist},{key},{tempo},{time},{tags},{country},{lang}and{youtube}directives fill the form.
- Alternatively, click Import ChordPro to load a
- Use the Quick Chords bar to insert
[C],[Am], etc. Buttons adapt to the song's key. - Click Save (editors and above) to write the song to Supabase, or Submit for Review (users) to send it to the review queue.
- Open a song page and click the pencil (Edit this song) button, or open
/portal/editorand use the search box to find the song. - Make edits in the metadata form and ChordPro editor.
- Click Save to update the
songstable in Supabase (or Submit for Review if you are not an editor).
The editor has a Language field, but translation grouping is not yet wired to the Supabase catalog: every song currently appears as its own entry, and language chips do not show in the app.
- Songs page — search and open the song; confirm title/key/tags.
-
SongView — transpose (key selector or
[/]), toggle chords, two-column reading view. - Setlist/Songbook — confirm the song can be found and added.
- Worship Mode — open via the Song or Setlist toolbar.
PPTX slide decks are uploaded to Cloudflare R2 via the PPTX upload widget in the song editor. See Slides-(PPTX) for details.
- Song not found in search: check that the row exists in Supabase with
is_deleted = falseandstatus = 'published'(drafts are hidden from users below editor). - Chords misaligned: ensure chord brackets precede the exact lyric characters and lines are not excessively long.
- Fonts in PDF look off: ensure Noto font files exist under
apps/web/src/assets/fonts/.
See also: ChordPro-Guide Slides-(PPTX) Admin-Portal
-
User Guide
-
Editing & Admin
-
Developer Guide
-
Infrastructure
-
Mobile