One
page, published at /
Brando 0.55.0 — installed
Every word on this page is content, not template. It was seeded by mix brando.setup — six blocks, seven modules and a footer fragment, all of which you can rewrite, reorder or delete from the admin.
One
page, published at /
Six
blocks on this page
Seven
modules you can edit
One
menu, under Navigation
Pages → Index holds the blocks you're reading. Change a heading, save, reload.
/admin/pages
Your markup, with named refs the editor fills in. You keep the HTML.
{% ref refs.title %}
A blueprint gives you schema, migration, admin forms and listings at once.
mix brando.gen
Modules, multi-blocks, containers and live preview of your real templates.
One definition becomes the schema, migration, admin forms and listings.
Focal points, generated sizes, CDN delivery and lazy-loaded srcsets.
Every save is kept. Schedule publishing ahead, roll back whenever.
Per-language content, identity, meta, JSON-LD and generated sitemaps.
Render the whole site to files and deploy it anywhere you like.
Wire up LivePreview and the editor renders your real templates while editing.
mix brando.setup skips every step whose result already exists.
Export them as JSON and import them into the next project.
Change how any block renders in villain/parser.ex.
The navigation above lives under Navigation, never in a template.
@space and @column come straight from your artboard.
Brando ships around forty mix tasks. These are the ones you will actually reach for. Anything marked ★ writes a reviewable plan first — it shows you the diff and waits for you to accept it. Add --help to any task for its full options.
Nothing here is special. It is a page, seven modules and a fragment — all removable from the admin, none of it wired into your templates.