Introduction
Custom elements. Native behavior. Nearly no JavaScript.
Mica is a front-end library built from custom element tags, native HTML
elements, and CSS. Behavior comes from the browser, not from a runtime:
<dialog> traps focus, popover handles menus,
<m-vstack> is a styling hook that needs no registration.
View source on any page here — there is nothing but static HTML and CSS.
Install
<link rel="stylesheet" href="mica.css" />
Use
<m-vstack gap="lg">
<h1>Hello</h1>
<button data-variant="primary">Submit</button>
</m-vstack>
Progressive by design
Mica is a progressive component library — progressive as in progressive enhancement. Every component starts from markup that works, and each layer added enhances it; remove a layer and things get plainer, never broken. Components state what they need: CSS-only — custom tags whose entire behavior is a stylesheet (layout). Native behavior — styled native elements; the browser ships the interactivity (forms, dialog, tables). JS-enhanced — tiny opt-in modules for the few patterns where accessibility genuinely requires script; each one enhances working markup, never renders it.