ns-ui
A newsletter capture whose headline element is a mono day-rail showing the publication's actual rhythm — six weeks of days, an issue mark every interval, a caret on today — so before typing anything you know exactly how often it lands and when the next one is.
Use when a newsletter/subscribe block where the publication's rhythm is the persuasion — the reader should be able to count the gap between issue marks and see the next date before deciding — rather than a generic 'join 5,000 readers' field; pick contact-form-teletype instead when the fill itself needs an honest running validation log, or schedule-ascii-freebusy when the subject is availability within a week rather than a repeating publication interval.
Install
npx shadcn add https://design.helpmarq.com /r/newsletter-cadence-rail.jsonns-ui / newsletter-cadence-rail
A fortnightly letter on interface craft, written by the people shipping it.
issue #48 shipped 4 days ago · next issue Fri 14 Aug · every 14 days
The rail is six weeks of days at one character each — a dot per ordinary day, a bar on every issue day, the accent block on today. Count the gap between bars and you have read the cadence before typing anything.
| Prop | Type | Default | Description |
|---|---|---|---|
| anchorISO | string | — | any known past issue date, ISO (YYYY-MM-DD). Anchors the whole cadence. |
| intervalDays? | number | — | days between issues. Default 14. |
| issues? | NewsletterIssue[] | — | recent issues, newest first — rendered as a short archive list |
| onSubmit? | (email: string) => void | — | — |
| className? | string | — | — |