- Single-vowel perfect families whose coda classes nest fuse into one
chain: wrist (IH S T) hubs this (IH S) and shit (IH T), which ride
as slant satellites — Logic's hook reads as one color
- Final s/z voicing neutralizes in coda classes and weak-ending keys:
vamonos rhymes dominoes
- The drafts bar wraps instead of scrolling, so many drafts stay
visible
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Beats: every pattern gets an 808 bass line (pitch-glide sine, per-
style note movement), trap/halftime get layered claps, lo-fi/jazz get
open hats, hats humanize velocity. Two new styles (Halftime, Dembow),
a tap-tempo button, and a four-dot beat indicator synced to the bar.
Cadence: flexible monosyllables (x) read as stressed, so contours
differing only in flex positions join one flow family.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Line-height returns to 1.9 by default; the roomy 2.35 line box (and
its tall caret) only applies while the rhythm dots need the space.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The rhythm layer now keeps dots over the unchanged prefix of an
edited line (same logic as the rhyme fills) instead of blanking the
whole line until re-analysis.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Two starred ideas, zero new chrome:
- Rhythm dots take a shared color when 2+ lines have the identical
stress contour (5+ syllables) — flow rhymes, visible
- Line-endings with no rhyme partner get a faint gray fill in the
rhyme layer: the open loops that show where to strike next
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Drafts escape localStorage — a Save .txt button downloads the current
draft (named after its first line), and dropping text files anywhere
on the page turns each into a new draft tab.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
First in the toggle row, on by default; the export honors it. Rhythm
dots and alliteration underlines are independent layers, so any
combination works (e.g. rhythm-only for a clean flow view).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Rhyme/synonym chips already in your draft get a gold tick
- Word card shows WordNet sense count (3+) — double-entendre fuel
- "alliteration" toggle underlines words sharing an initial sound
(locally clustered, 3+ words), in the editor and the PNG export:
fills = tail sound, underlines = head sound
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Inline (parentheticals) are delivery, not text — they no longer rhyme
or steal the line-ending slot ("...bunch (yeah)" rhymes on bunch).
The readout leads with "bar 3/16" for the caret's place in its verse.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
WYSIWYG: PNG line spacing widens to fit, dots centered under each
word in ink, same notation as the editor.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sheet music for rapping — the label should say what it feels like,
not what linguists call it.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Optional "stress" toggle renders ●/○ dots beneath every 2+ syllable
word (filled = stressed) in a transparent overlay behind the textarea,
so the dots never disturb text metrics. Backend emits per-word stress.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The wavy break-warning and its checkbox are gone; the toolbar keeps
the neutral per-line readout (syllables + meter label) on the caret
line. Backend still computes it; the warning UI just retired.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- "Describes" lookup mode: adjectives that commonly modify the word
(night -> dark, starry, silent) via Datamuse rel_jjb, client-side
- Typing a trailing "?" on a lookup jumps straight to synonyms
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The card is now read-only — phonetic readout and dismiss only. Dropped
the orphaned insertAtCursor helper and dead button CSS with it.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Drops the dictionaryapi.dev meanings/examples entirely. The lookup
panel ("Rhymes & words") now shows a phonetic readout for the word —
/phones/, syllables, stress, rhyming tail, sounds-like (homophones),
and what it rhymes with in your draft — over Rhymes / Synonyms lists.
RhymeZone-inspired touches kept: rarity-styled chips (common bold,
rare dimmed) and homophones.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The two-word generator goes (the /api/word phonetics card stays);
the definition card now belongs to the word — switching Rhymes/
Synonyms only swaps the list, and a dismissed card stays dismissed
until a new word is looked up.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Anchoring at the first vowel instead of the stressed rime lets
tonight rebuild as "a night"; single-letter left words return with a
rank penalty; indexes warm at boot; the no-results message stops
blaming syllable count.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The pass-4 suppression predates fills-only rendering; mind/time now
pair even while «all this time» rides its mosaic.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Mosaics submode: two-word phrases that rhyme with a word perfectly,
built by splitting its rime and searching both halves with reduced-
vowel squeezing (placement -> place meant, creation -> way shun)
- Definition cards show phonetic anatomy (/phones/ · syllables ·
stress dots · the rhyming tail) and what the word already rhymes
with in your draft
- Secondary pronunciations only claim partners within 4 lines, so the
verb pred-i-KATE can't hand predicate to a distant hook's "eight"
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Words a draft uses 4+ times (niggas, bitch, Money) stop lighting up
mid-line — their line-end uses still rhyme. Consonance clusters break
on gaps over two lines: speech can't light keep from eight lines away.
Locks the swimmers/finisher/twist-her chain with a test.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Client-side canvas render of the draft with its rhyme colors — 2x
PNG, draft-titled filename, rhymepad.org watermark. The sample still
seeds first visits; the button is gone.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
A phrase run with <2 full vowels can't barge into a word family
("Two bitches" -> the Tuna chain) but may pair with a structurally
parallel phrase (clock's ticking / stop tripping).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The -er weak key was claiming commissioner/finisher before the
multisyllabic pass could unite them with militia — Wayne's chain
split into two colors. Weak endings (infancy/see) now run dead last.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Beats get a master volume slider (perceptual curve)
- Cmd/Ctrl+S flashes "saved" instead of the browser dialog;
Cmd/Ctrl+K jumps to the dictionary input
- Editor autofocuses on desktop; lookup input selects-all on focus;
panel scrolls to top on new lookups
- Browser tab title follows the active draft
- Tooltips on sample button and meter check
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
AO merges into AA except before R (thought/lot, off/forgotten; car/
core stay apart). Line-ending phrases may rhyme on their pure vowel
run like end words always could — "forgotten" / "off of" lands.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Edited lines keep highlights over their unchanged prefix (no more
blank-flicker while typing at line ends); 180ms debounce
- Sequence guard against out-of-order analysis responses
- iOS: 16px editor font (no zoom-jump); touch word-selection opens the
dictionary (double-click equivalent)
- First-ever visit seeds the sample draft so colors show immediately
- Draft tabs restore caret and scroll position
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The weak-end key is now the full final-syllable rime in its own
keyspace, and groups advertise their founding rime's final syllable:
infancy still joins see/be/me (open IY), but screams (IY M Z) no
longer rides the divinity/entirety family.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
stasis (STAH-seez?!) and kinda (KIH-nda) get corrected primaries;
the dict entry stays as a secondary candidate. Oasis of stasis now
glows as the perfect rhyme it is.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Feminine rhymes anchor on the unstressed final syllable: infancy
joins see/be/me (Lateralus). End-slant pass tries the bare final
vowel as a fallback key, with claiming.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
End rhymes 34%, internals 13% (phrases 22/10) — scheme structure
reads at a glance without the old underlines.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
End rhymes keep the stronger tint; phrase rhymes paint the stretches
their words don't claim, so multi-word matches still read as units.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
CMU's fear (IH R) now rhymes with hear/here (IY R) as it does in
every English dialect; same merge for UH/UW before R. "here" earns
back internal-rhyme rights — poets rhyme it constantly.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Prufrock's "is it" / "visit" are phone-for-phone identical; identity
evidence overrides the anchor rule. Stopword-anchored phrases still
can't form groups among themselves.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Groups advertise members' high-specificity mosaic keys (2+ full
vowels) for attachment, and a both-halves-taken phrase may join any
family except its anchor's own — Gambino's "pass the time" now ties
to mastermind/rind across the Mass/pass claim.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Three-word vowel mosaics (mean to it / seen do it / theme music) now
group, gated hard: the mosaic must draw a full vowel beyond its anchor
word, and all-phrase buckets mirroring the same two word groups stay
suppressed. Scheme readout truncates at 16 letters; draft tabs cap at
170px with ellipsis.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
four-inch and door hinge join the orange/storage/porridge clan even
though four/door and inch/hinge each rhyme on their own — a phrase
whose target group differs from both halves' groups carries new
information. The full orange verse is now a test.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>