Skip to content
- Standard HTML first — native
button, input, dialog, popover are the primary API.
- Light DOM first — no Shadow DOM; htmx attributes and forms work normally.
- Semantic classes —
hc-button over long utility lists.
- State in HTML attributes —
data-*, aria-*, native attributes drive styling.
- htmx owns network behavior — behaviors do not wrap
fetch().
- Behaviors stay small — confirm, toast, close dialog, focus management.
- DTCG tokens are the visual source of truth — CSS consumes custom properties.
- Macros are optional — every macro documents its expanded HTML.