# Built-in Components Aardvark ships a built-in `{% tag %}` for **every Mantine core component** — no setup, no JavaScript to write. They're grouped by category in the left nav, mirroring Mantine's own groupings, so you can browse by what a component _does_. On top of the Mantine set, aardvark adds a handful of **native** components built just for documentation sites, plus a growing **Community Components** catalog: eligible third-party Mantine extensions are wrapped as built-in tags, while notable policy exclusions are documented explicitly. Pick a category to see every tag in it, with live examples and source: Native components with no Mantine equivalent — banners, gitfolders, includes, maps, and changelogs. Structure a page — containers, stacks, grids, spacing, surfaces, and scroll areas. Text fields and controls — inputs, selects, checkboxes, switches, sliders, and color pickers. Select, autocomplete, multi-select, and tag inputs built on Mantine's Combobox. Buttons and button-like controls for actions and links. Move through content — tabs, steps, breadcrumbs, pagination, and tree views. Tell the reader what happened — callouts, progress, loaders, and notifications. Modals, drawers, dialogs, tooltips, popovers, and menus layered over the page. Show content — cards, badges, images, tables, accordions, and timelines. Style text — titles, code, highlights, lists, dividers, and tables. Third-party Mantine extensions — bundled tags that pass the license and compatibility gates, plus documented exclusions. ## Build your own When the built-ins don't cover it, define your **own** component in your project — that's a [custom component](/authoring/custom-components/), and it's where the real flexibility is. Drop a React component in `snippets/` and call it from Markdown exactly like a built-in: `snippets/ProductCard.jsx` freely blends **plain HTML** (`
`) with Mantine components (`Card`, `Group`, `Badge`, `Button`) — inside a snippet it's just React, so any blend of HTML and Mantine you choose works. See [Components & snippets](/authoring/components-and-snippets/) for the full authoring guide. Need a whole **third-party React library** — Stripe Elements, a charting kit, an icon set? A theme can pull one in and address it through the same tag with a library-name first argument: `{% component('stripe', 'PaymentElement') %}`. See [Component libraries](/components/extras/component-libraries/).