# Component Reference All components live in `Htmx.ApiDemo/Templates/Components/`. Each is a `.htmx` template and a `.htmx.cs` class pair. You create one with `new ComponentName(...)` and drop it into any page slot. If you have not read [03-creating-a-component.md](03-creating-a-component.md) yet, start there — it explains how components work under the hood. For known API limitations and improvement tracking, also see: - [Issues/Components/00-API-Limitations-and-Workarounds.md](Issues/Components/00-API-Limitations-and-Workarounds.md) - [Issues/Components/00-API-Design-Guidelines.md](Issues/Components/00-API-Design-Guidelines.md) - [Issues/README.md](Issues/README.md) --- ## How to read the component docs Each component doc is structured the same way: 1. **What it does** — a one-line description 2. **Quick example** — the shortest possible usage that produces a result 3. **All the options** — every parameter explained 4. **Real-world examples** — usage in context (inside a form, inside a page, with HTMX attributes) 5. **How it works** — CSS mechanics and any JavaScript, for when you need to customise it --- ## Display components These render static visual elements. No JavaScript required. | Component | What it is | Doc | |---|---|---| | Alert | Coloured callout box for messages and errors | [Alert.md](Components/Alert.md) | | Avatar | Circular user icon — image or initials fallback | [Avatar.md](Components/Avatar.md) | | Badge | Small coloured label pill | [Badge.md](Components/Badge.md) | | Breadcrumb | Navigation trail showing current location | [Breadcrumb.md](Components/Breadcrumb.md) | | Card | Bordered container with optional header and footer | [Card.md](Components/Card.md) | | Progress | Horizontal fill bar showing a percentage | [Progress.md](Components/Progress.md) | | Separator | Horizontal or vertical divider line | [Separator.md](Components/Separator.md) | | Skeleton | Animated loading placeholder | [Skeleton.md](Components/Skeleton.md) | | Table | Styled data table with headers and rows | [Table.md](Components/Table.md) | | Tooltip | Hover hint above any element (pure CSS) | [Tooltip.md](Components/Tooltip.md) | --- ## Form components These are used inside `