SkillsApr 11, 2026·2 min read

Mantine — Fully Featured React Components Library

Mantine is a modern React components library with 120+ customizable components and 70+ hooks. Dark mode, TypeScript-first, built-in form management, notifications, modals, and rich text editor. The batteries-included alternative to MUI.

Agent ready

Ready-to-run agent install

This asset can be installed after the agent chooses its runtime, checks the plan, and runs the matching command.

Native · 98/100Policy: allow
Agent surface
Any MCP/CLI agent
Kind
Skill
Install
Single
Trust
Trust: Established
Entrypoint
step-1.md
Direct install command
npx -y tokrepo@latest install ee95461f-3577-11f1-9bc6-00163e2b0d79 --target codex

Run after dry-run confirms the install plan.

TL;DR
Mantine is a React components library with 120+ components, 70+ hooks, and zero-config dark mode.
§01

What it is

Mantine is a fully featured React components library with 120+ customizable components and 70+ hooks. It is TypeScript-first, includes built-in form management, notifications, modals, and a rich text editor. Dark mode works with zero configuration.

Mantine targets React developers who want a batteries-included UI library without the complexity and bundle size of Material UI. MIT licensed with an active maintainer.

§02

How it saves time or tokens

Mantine provides everything a typical web application needs: inputs, buttons, tables, modals, notifications, date pickers, charts, a command palette (Spotlight), and a rich text editor (Tiptap-based). Instead of assembling separate libraries for each feature, you install Mantine and get a consistent design system. The 70+ hooks cover common UI patterns (useDebouncedValue, useLocalStorage, useClipboard, useMediaQuery) that would otherwise require custom code.

§03

How to use

  1. Create a new project with Mantine:
npm create vite@latest my-app -- --template react-ts
cd my-app
npm i @mantine/core @mantine/hooks
  1. Set up the provider and use components:
import '@mantine/core/styles.css';
import { MantineProvider, Button, TextInput, Stack } from '@mantine/core';

function App() {
  return (
    <MantineProvider defaultColorScheme='auto'>
      <Stack p='xl'>
        <TextInput label='Name' placeholder='John' />
        <Button>Submit</Button>
      </Stack>
    </MantineProvider>
  );
}
  1. Add form management:
import { useForm } from '@mantine/form';

const form = useForm({
  initialValues: { email: '', name: '' },
  validate: {
    email: (value) => (/^\S+@\S+$/.test(value) ? null : 'Invalid email'),
  },
});
§04

Example

Building a command palette with Mantine Spotlight:

import { Spotlight, SpotlightActionData } from '@mantine/spotlight';

const actions: SpotlightActionData[] = [
  { id: 'home', label: 'Home', description: 'Go to home page' },
  { id: 'dashboard', label: 'Dashboard', description: 'View analytics' },
  { id: 'settings', label: 'Settings', description: 'Manage preferences' },
];

function App() {
  return (
    <Spotlight
      actions={actions}
      searchProps={{ placeholder: 'Search...' }}
      shortcut='mod + K'
    />
  );
}
// Press Cmd+K to open the command palette
§05

Related on TokRepo

  • Coding tools — More React frameworks and developer tools on TokRepo.
  • Design tools — Browse UI design and component libraries.
§06

Common pitfalls

  • Forgetting to import '@mantine/core/styles.css' causes unstyled components. This CSS import is required at the application root.
  • Using Mantine components outside MantineProvider breaks theming and dark mode. Wrap your entire app with MantineProvider.
  • Installing all Mantine packages at once bloats the bundle. Install only the packages you need (@mantine/core, @mantine/hooks, @mantine/form, etc.).

Frequently Asked Questions

How does Mantine compare to Material UI?+

Mantine is lighter, includes more built-in features (Spotlight, rich text editor, charts), and has a simpler API. Material UI has a larger ecosystem and more third-party integrations. Mantine uses CSS modules while MUI uses Emotion CSS-in-JS.

Does Mantine support server-side rendering?+

Yes. Mantine supports SSR with Next.js, Remix, and other React server frameworks. Version 7+ uses CSS files instead of CSS-in-JS for better SSR performance.

How does dark mode work?+

Set defaultColorScheme to 'auto' in MantineProvider and dark mode follows the system preference. You can also toggle programmatically with useMantineColorScheme hook.

What hooks does Mantine provide?+

Mantine includes 70+ hooks: useDebouncedValue, useLocalStorage, useClipboard, useMediaQuery, useClickOutside, useDisclosure, useIntersection, useScrollIntoView, and many more.

Is Mantine free for commercial use?+

Yes. Mantine is MIT licensed and free for personal and commercial use with no restrictions.

Citations (3)

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets