BUSY-OFFICE / UI · SYSTEM RECORD
CSS for screens
that do work.
A CSS-first framework for ERP and back-office applications: semantic components, density as a first-class dimension, and modern CSS with the cascade as the API.
npm i @busy-office/ui On npm as @busy-office/ui — or pilot without a
bundler by copying
dist/ into any server stack; the output is plain CSS.
Start from where you are
Every other list here sorts by component. This one sorts by situation — each row ends on a page that shows the thing working, not one that only describes it.
Find it by task
Built from the back office out
Pilot one screen
No framework earns 200 screens on a landing page. Take one screen — à la carte, into your existing app:
import "@busy-office/ui/css/tokens.min";
import "@busy-office/ui/css/reset.min";
import "@busy-office/ui/css/components/data-table.min";
/* one screen, ~4.6 kB gzipped — the exact files above.
Your unlayered CSS already outranks all of it. */ What you're not signing up for: semantic tokens, documented
class names, and data-*/ARIA contracts are
the versioned API; the
cascade contract means leaving is incremental overrides, not a rewrite.
The exit is cheap by design — verify it, don't trust it.
Reviewed like it matters
Every slice went through an adversarial multi-seat design review before sign-off: 40 components, three review rounds, every gate finding fixed or on the public ledger. Two rules that came out of it are now build-enforced: every container query is named, and every state signal carries a non-color cue plus a programmatic channel. The full trail — findings, NO-GO verdicts, and the fixes that answered them — is public in the repo.