Skip to content

Company

About

Teasim is a small set of packages for building content sites, split along the line between what renders and what computes.

Why we exist

Most component libraries make two decisions on your behalf. They decide how your site looks, by shipping a stylesheet. And they decide how your site is built, by rendering your content for you. Both are borrowed decisions, and both are expensive to undo two years later when you want something they did not anticipate.

Teasim tries to make neither.

How the split works

@teasim/astro renders markup and carries behaviour with it. It ships no stylesheet at all; your own TeaCSS build generates exactly the classes your markup used.

@teasim/aster arranges those elements into the page-level chrome a site repeats — the shell, the header, the navigation, the table of contents. It owns arrangement and never restates a surface.

@teasim/astra computes navigation, validates content, and serves the machine-readable routes. It renders nothing.

No package knows what the others look like, and a project can take any of them on its own.

What we optimise for

The markup you would have written. An accordion is a details element. If you inspect the DOM and find something you would not have written by hand, that is a defect.

Behaviour without JavaScript first. The open state belongs to the browser. A runtime binds on top when there is one, and the page works when there is not.

Decisions that are written down. Where something looks like removable duplication and is not, the reason lives beside it, so the next reader does not have to rediscover it by breaking something.