Services
Each service as content, not markup. Add a new offering, retire an old one — the owner does it in the browser, the grid never breaks.
A local service website template that turns searches into calls.
Northwind is a complete local-service site — services, service areas, reviews, and contact — built from Svelte blocks with typed fields. The page your agent restyles as code and the page the owner edits in the browser are the same files — the editor generates itself from each block’s field schema, no glue code.

Each service as content, not markup. Add a new offering, retire an old one — the owner does it in the browser, the grid never breaks.
A repeater of the towns and neighborhoods you cover — the kind of local-intent content that earns the search. Editable without a developer.
A repeater of customer quotes. A five-star review comes in Tuesday; it’s on the homepage by Tuesday afternoon, no ticket filed.
A contact section ready to point at a form, a phone number, or a booking tool. Swap the link, keep the design.
Every block declares its fields in fields.yaml — text, rich text, image, link, repeater. The editor UI is generated from that schema.
A complete, self-contained site — Svelte components in your repo, MIT-licensed. No framework lock-in, no hidden runtime.
Scaffold the starter into your workspace, point your agent at the repo, push. Then hand the owner the browser.
One command scaffolds a Primo workspace — your sites, as plain files.
$ npx primo-cli init my-workspace
Creates the full local-service site in your repo — blocks, pages, content, config.
$ primo new service-co --template local-service
Point any CLI agent at the repo. Swap in real services, areas, brand colors, photography.
$ claude "set up services and service areas"
Files sync to the server. The owner adds a review or a new service in the browser — on the rendered page.
$ primo push
MIT · open source · works with any CLI agent. The –template flag for one-command starter forks is rolling out — today, fork by pulling the starter site and pointing your agent at it.
Build it with an agent. Hand it to the owner.
One command to spin up a workspace. Point any agent at the repo, then hand your client the browser.
MIT · open source · free forever