Gives you

Creative freedom

Templates are plain PHP and CSS in your own folder. No page builder and no plugin decides what your site can look like.

The form lives in your theme

Everything that gives a site its form lives in theme/. The engine renders; the theme decides what the rendering looks like. There is no page builder between you and the markup, no block library to stay inside, no build step to feed. Stylesheets, scripts and fonts are files in assets/ — you link them, the server serves them.

How a page finds its template

There is no routing file that lists pages. A page finds its template by a short ladder:

RungTemplate
Namedone named on the entity itself — for the page that needs its own
Typeone named after its type: every Event through event.php
Floorthe one every page can land on

A newly claimed page renders the moment it exists. Where nearly all the work goes is the middle rung: one template per kind of thing.

Plain PHP, plain CSS

A loam theme is PHP templates over data, with a small set of helpers. No template language of its own, and no other one accepted — no Liquid, no Twig. Page blocks are sections, small fragments are snippets, interface words live per language in strings. If you have built themes elsewhere, the concepts carry over; only the file types change.

Defaults you can take over

Every page the engine serves by itself — the 404, the offline page, the install guide, the explainer at /admin — gives way to a theme file of the same name. Do nothing and the engine's version serves; put a file of the right name in the theme and yours does. A listing of the theme shows exactly where your site differs.

What a plugin would add, you own

There are no plugins: what one would bring lives in your theme, in your own files, on your own schedule. And a page can carry what it needs to render — colours, a focus point, a chosen template — beside its Schema.org content, stripped from the machine view so the claim stays true.

Templates are changes too

A new template is a draft like any other change: previewed on the real site, refused if it does not parse, checked before it goes live. A designer can rework a page with the live site untouched until someone publishes.