Plasma components implemented with React!
Overview
Plasma is Coveo's design system used in Coveo Cloud Administration Console. It provides a Mantine-themed component library, design tokens, React icons, and documentation. All components and their documentation are available in the demo page. Wrap your application with the Plasmantine provider — it applies the Plasma theme on top of Mantine, so you don't need a separate MantineProvider: always import from @coveord/plasma-mantine, even when Mantine docs were the reference source. Each package documents its own installation and usage in its README: - — requires React or later (react and react-dom). - — built for Mantine (@mantine/core and @mantine/hooks are required peer dependencies). Optional Mantine packages (@mantine/notifications, @mantine/dates, @mantine/form, @mantine/modals, @mantine/carousel, @mantine/code-highlight) are also on the 9.x line — install the ones you use. - — ships its own type declarations; no @types package needed.
README
Plasma
Plasma is Coveo’s design system used in Coveo Cloud Administration Console. It provides a Mantine-themed component library, design tokens, React icons, and documentation. All components and their documentation are available in the demo page.
Usage
npm install @coveord/plasma-mantine @mantine/core @mantine/hooks react react-dom
Wrap your application with the Plasmantine provider — it applies the Plasma theme on top of Mantine, so you don’t need a separate MantineProvider:
import {Plasmantine} from '@coveord/plasma-mantine/plasmantine';
import '@mantine/core/styles.css';
function App() {
return {/* your app */};
}
Import invariant: always import from
@coveord/plasma-mantine, even when Mantine docs were the reference source.
Each package documents its own installation and usage in its README:
| Package | Purpose |
|---|---|
@coveord/plasma-mantine |
Mantine-themed component library (main package) |
@coveord/plasma-tokens |
Design tokens (colors, typography, spacing, icons, …) |
@coveord/plasma-react-icons |
Plasma iconography as React components |
@coveord/plasma-llms |
LLM-friendly component documentation |
@coveord/plasma-mcp-server |
MCP server exposing Plasma docs to AI agents |
Compatibility
- React — requires React 19.2 or later (
reactandreact-dom). - Mantine — built for Mantine 9 (
@mantine/coreand@mantine/hooksare required peer dependencies). Optional Mantine packages (@mantine/notifications,@mantine/dates,@mantine/form,@mantine/modals,@mantine/carousel,@mantine/code-highlight) are also on the9.xline — install the ones you use. - TypeScript — ships its own type declarations; no
@typespackage needed. - Modules — distributed as ES modules (
"type": "module"); use a bundler or a Node.js version that supports ESM.
AI Coding Agents
For the best agent experience, combine the Plasma skill with both documentation MCP servers. They serve complementary purposes:
- Plasma skill: persistent setup, import, and documentation lookup conventions
- Plasma MCP: authoritative on-demand Plasma-specific props, sub-components, usage, and content guidelines
- Mantine MCP: on-demand fallback for re-exported components and inherited props
Use both the skill and MCP servers when the client supports them. The skill uses static @coveord/plasma-llms files only as a fallback when MCP is unavailable.
Import invariant: always import from
@coveord/plasma-mantine, even when Mantine docs were the reference source.
Contributing
See CONTRIBUTING.md for how to set up the repo, run the demo, test, and open a pull request. AI coding agents should read AGENTS.md.
@coveord/plasma-styleand@coveord/plasma-reactare in maintenance mode and live on thev53branch.
See CONTRIBUTING.md for the changeset format (title rules, per-bump requirements, and examples). You can scaffold a pre-filled changeset with pnpm changeset:new and check it with pnpm changeset:validate.
License
All packages under this repository are distributed under Apache 2.0 license.
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add coveo/plasma