Adapters
An adapter is the layer that makes a third-party component library wear your theme. You keep the library your team already uses; the adapter reads the Recursica tokens and applies them, so a re-themed export restyles every component without touching a call site. See Architecture for how those tokens are structured.
Each adapter is its own repository now, and each one publishes an ADAPTER_STATUS.md saying exactly which components it maps, which it hand-builds, and which it deliberately leaves alone. The sections below are generated from those documents, so what you are reading is whatever the adapters last said about themselves rather than a second copy kept here.
Mantine is the reference implementation and the one this site is built with; Material UI and Carbon are in progress behind it. The adapters are MIT licensed and all follow one pattern, so a contribution is tractable: join the Slack and advocate for it, or build it and open a PR.
Shared packages
Every adapter below builds on the same packages, still in the recursica monorepo — the adapters stay thin because what they have in common is factored out.
- adapter-common — the token plumbing every adapter reads, including the
overStyledescape hatch and the props each component accepts. - adapter-tester — the harness that checks an adapter renders every component in every variant and state.
- storybook-template — the Storybook a designer reviews a themed branch in, before a developer sees the PR.
- recursica-postcss-vars — resolves the exported CSS custom properties at build time.
- recursica-token-analyzer — reports which tokens a codebase actually uses, and which it hardcodes instead.
- recursica-mcp — the MCP server that gives an agent the same token and component knowledge.
Mantine
@recursica/mantine-adapter — Repository · Adapter status · npm
- Accordion
- AssistiveElement
- AutoComplete
- Avatar
- Badge
- Breadcrumb
- Button
- Card
- Checkbox
- CheckboxGroup
- Chip
- Container
- DatePicker
- Dropdown
- FileInput
- FileUpload
- Flex
- FormControlLayout
- FormControlWrapper
- Grid
- Group
- Heading
- HoverCard
- Label
- Layer
- Link
- Loader
- Menu
- Modal
- NumberInput
- Pagination
- Panel
- Popover
- Radio
- RadioGroup
- ReadOnlyField
- RecursicaThemeProvider
- SegmentedControl
- Slider
- Stack
- Stepper
- Switch
- SwitchGroup
- Table
- Tabs
- Text
- TextArea
- TextField
- Timeline
- TimePicker
- Toast
- Tooltip
- TransferList
- Tree
Material UI
Under way in its own repository. It has not published an ADAPTER_STATUS.md yet, so there is no component list to show here — this page reads that document rather than tracking coverage separately.
Carbon
Under way in its own repository. It has not published an ADAPTER_STATUS.md yet, so there is no component list to show here — this page reads that document rather than tracking coverage separately.