what shipped, when.
the recent stuff. dated, honest, written like notes. each line is one thing we shipped — what changed, what it fixes, who it helps.
- 2026-04-27feature
fan-initiated DSAR
fans can now request export or deletion of their data without having a yala account. they go to yala.la/dsar, submit their email + the action, get a confirmation link, click it, done. cross-workspace by design — covers every artist's data they're in. closes the last "mandatory before public launch" item. - 2026-04-27design
calm-card vocabulary across every landing
every fan-facing panel — release / pre-release / podcast / playlist / ticket / bio — now shares one card shape: flat white, hairline border, 1px hover-lift shadow. the colored 4px left bar is gone. the accent only shows up where it earns it (DSP CTA pills + email submit button). - 2026-04-27feature
tap a swatch to set the accent
the palette preview is interactive. five sampled swatches plus a sixth dashed-border tile for the recommended accent (the HSL-180° complement we compute from the dominant). click any tile, the landing's accent flips. recommended tile survives any number of changes — recomputed from palette.dominant on every render, never overwritten. - 2026-04-27feature
email capture, three surfaces
the bio block kept its capture block. release / pre-release / podcast / playlist / ticket links got an email-capture toggle on the look tab — one-click section under the DSP buttons. and the spotify pre-save now offers a single-gesture double opt-in: "also email me when it drops" checkbox under the pre-save button (only when capture is on). - 2026-04-27design
marketing site + help docs
new apps/marketing on :3102 — home, pricing, manifesto, vs-linkfire, features, about. plus 13-page help docs section with sidebar nav. brand voice locked end-to-end. - 2026-04-27design
deep design sweep
wit-bank in copy.ts (time-of-day greetings, round-robin sub-pitches, witty empty/loading lines). chunkier hierarchy on home + auth + workspace + links list. wizard type-tiles got Lucide glyphs and reflow into a 2-col grid. link-edit tabs each got a one-line subline. - 2026-04-27design
deep design sweep
wit-bank in copy.ts (time-of-day greetings, round-robin sub-pitches, witty empty/loading lines). chunkier hierarchy on home + auth + workspace + links list. wizard type-tiles got Lucide glyphs and reflow into a 2-col grid. link-edit tabs each got a one-line subline. - 2026-04-26feature
GDPR DSAR endpoints + admin UI
Article 15 (export) and Article 17 (erasure) for fan emails. admin path: workspace → settings → privacy. exposed via the public API too. encrypted refresh tokens stay encrypted; row included in export so the fan knows it exists. - 2026-04-26design
link-edit unification
the per-link admin is now a tabbed orchestrator: basics / look / destinations / share / insights. bio swaps in blocks; ticket skips destinations. social-card editor reworked to default-to-artwork with a customize toggle and drag-drop upload. landing gradient killed (flat surface). - 2026-04-26feature
lenient URL inputs
paste spotify.com/track/abc; yala silently rewrites to https://... on blur and on submit. no more "include http://" browser popups. - 2026-04-26doc
cloudflare worker deploy guide
full deploy doc at docs/cloudflare-worker-deploy.md. routine re-deploy is one command. troubleshooting matrix + rollback + KV inspection commands included. - 2026-04-25fix
wizard nested-form bug
adding a service from the wizard preview was submitting the outer form (= creating the link prematurely). nested forms are invalid HTML; flattened the inner adder to a div with manual Enter/click handlers. - 2026-04-25feature
scan-first wizard flow
new in the create-link wizard: preview the scan + edit the destination list in-memory, THEN create. the link is created with seeded destinations in one transaction — no scan_jobs row, no worker dispatch. drops the artist on the look tab afterward.
this page is hand-curated, not auto-generated from commits. we want it to read like notes; bots write boring notes.