# Stanzabar > A song arrangement board in the browser, at https://stanzabar.skillsafe.ai/. Sections (intro, verse, pre-chorus, chorus, bridge, outro...) sit as blocks on a bar-numbered timeline; the key is chosen on a circle of fifths; chords are placed per bar and beat; lyric lines sit on a syllable grid that counts each line against the section's target metre and letters its rhyme scheme. A model writes lyric lines to the metre, revises only the lines you mark, or critiques the arrangement - and every proposal is recounted and checked against the key before it is offered, ghosted on the board, accepted one by one. Who it is for: hobby songwriters, worship teams, teachers writing a class song, families writing a birthday song, bands shaping a demo. ## What runs free in the browser - Timeline: drag blocks to reorder, drag a block's right edge to change its length in bars, duplicate, remove; tempo and time signature (4/4, 3/4, 6/8, 2/4, 12/8) give the running time (bars x beats per bar x 60 / tempo; in 6/8 and 12/8 the tempo counts dotted quarters). - Key wheel: twelve major keys and their relative minors; the current key's signature and its diatonic neighbourhood highlighted; enharmonic respelling (F#/Gb, Db/C#, B/Cb); parallel major/minor. - Transposition re-spells every chord against the new key's letters (by degree and alteration), so C-G-Am-F-Bb in C becomes Eb-Bb-Cm-Ab-Db in Eb. - Chords: diatonic palette (triads or sevenths), borrowed chords (iv, bVI, bVII, bIII... in major; IV, V, viio... in minor) and secondary dominants; progression chips (I-V-vi-IV, vi-IV-I-V, I-vi-IV-V, ii-V-I, the canon, 12-bar blues and minor variants); Roman numerals or letter names; each chord labelled diatonic, borrowed, secondary or chromatic. - Syllable grid: a count per line against a target metre - a number, a dotted hymn metre such as 8.6.8.6, or CM / LM / SM - and a rhyme letter per line against a scheme such as ABAB, AABB, ABCB, AAB or with X for a free line. - Checks: lines off the metre, lines with no rhyme partner, identity rhymes, verse-to-chorus echoes, crowded sections, chromatic chords, a title missing from the chorus's first or last line, sections that overstay; a hook tracker listing repeated lines. - Optional chord playback (Web Audio); everything works with sound off. - Files: printable lead sheet (chords over lyrics), Markdown lyric sheet with chords in brackets, ChordPro (round-trips), CSV of sections and chords, JSON. Opens Stanzabar JSON, ChordPro or a plain lyric sheet. ## Limits, stated plainly The syllable estimator and rhyme matcher work from spelling, not a pronunciation dictionary. Proper nouns, numbers, slang and foreign words are guesses; stress is not modelled. Words a singer can sing two ways ("fire", "every", "heaven", "flower") carry a range, and a model's count is only contradicted outside it. Rhymes are a songwriter's rhymes: same vowel, with the final consonants allowed to differ in voicing or nasal (time/line, home/stone, eyes/surprised); same vowel with a different ending is reported as assonance. Homographs (read, live, wind, tear) take the commoner sound. ## The model lanes (metered: model gpt-terra on SkillSafe, signed-in users) The run input is a JSON object of string fields: task, title, brief, song, targets, facts, optional why, clipped and retry_note (object-valued fields JSON-encoded). Full contract with worked examples: https://stanzabar.skillsafe.ai/api.html - task "lyrics": write lines for the sections in targets, in each section's metre and scheme. Reply: {task, sections:[{section, lines:[{n, text, syllables, rhyme, note}]}], hook:{text, where}, notes}. - task "revise": rewrite only the marked lines. Same reply shape, only marked line numbers. - task "critique": {task, summary, hook:{section, n, advice}, sections:[{section, verdict: keep|trim|extend|cut|move|rewrite, bars, advice}], moves:[{section, to, reason}], chords:[{section, bar, beat, from, to, reason}], notes}. How replies are held to the board: every line is recounted (model says 8, we count 9 is flagged), rhyme letters are re-derived from the section as it would read after the change, lines for sections or line numbers that were not asked for are refused, a chord substitution must name the chord actually on that bar and replace it with a diatonic, borrowed or secondary-dominant chord in the key (a chromatic suggestion is shown but cannot be accepted), and every section id must exist. Long songs are clipped on whole lines: structure and chords are always sent complete; when the lyric is over budget, sections that are not targets keep their first and last line and the run says how many lines were left out. ## History One record per song in the signed-in account (collection "songs"), mirrored in the browser; later runs and accepted proposals update the same record. ## Sources Built on two SkillSafe skills: lyric-writer by @bitwize-music-studio (https://skillsafe.ai/skill/@bitwize-music-studio/lyric-writer) - prosody, rhyme craft and the lyric quality checks - and songwriting-and-ai-music by @nousresearch (https://skillsafe.ai/skill/@nousresearch/songwriting-and-ai-music) - song structure, hooks, dynamics and contrast. Music theory (keys, diatonic and borrowed chords, transposition) is the page's own code. - App: https://stanzabar.skillsafe.ai/ - API: https://stanzabar.skillsafe.ai/api.html - SkillSafe: https://skillsafe.ai/