mantine.dev
Open in
urlscan Pro
185.199.110.153
Public Scan
Submitted URL: http://mantine.dev/
Effective URL: https://mantine.dev/
Submission: On May 14 via api from US — Scanned from DE
Effective URL: https://mantine.dev/
Submission: On May 14 via api from US — Scanned from DE
Form analysis
0 forms found in the DOMText Content
Welcome to Mantine, React components library that you always wished for7.9.1 Search Ctrl + K Welcome to Mantine, React components library that you always wished for Getting startedAbout MantineAPI OverviewContributeColors generatorHelp centerMantine UI theming styles guides mantine hooks mantine form mantine core mantine dates mantine charts extensions changelog Build fully functional accessible web applications faster than ever – Mantine includes more than 100 customizable components and 50 hooks to cover you in any situation Free and open source All packages have MIT license, you can use Mantine in any project TypeScript based Build type safe applications, all components and hooks export types Use anywhere Mantine supports all modern frameworks: Next.js, Remix, etc. Get startedGitHub 100+ COMPONENTS Inputs 20+ input components Date pickers Calendar, date pickers, time inputs Overlays & Navigation Modal, HoverCard, Tabs, Stepper Content Accordion, Timeline Rich text editor Tiptap based rich text editor Carousel Embla based carousel Text input * Password input * Color input Native select ReactAngularSvelteVue Custom select Searchable select Custom multi select Autocomplete With description Every input can have description... With error ...and error DARK COLOR SCHEME Add dark theme to your application with just a few lines of code – Mantine exports global styles both for light and dark theme, all components support dark theme out of the box. import { MantineProvider } from '@mantine/core'; function Demo() { return ( <MantineProvider defaultColorScheme="dark"> <App /> </MantineProvider> ); } Toggle color scheme CUSTOMIZE COMPONENTS Every Mantine component supports visual customizations with props – you can quickly prototype and experiment by modifying component props: New branch You've created new branch fix-notifications from master 2 hours ago Commits You've pushed 23 commits to fix-notifications branch 52 minutes ago Pull request You've submitted a pull request Fix incorrect notification message (#187) 34 minutes ago Code review Robert Gluesticker left a code review on your pull request 12 minutes ago Color Radius xs sm md lg xl Active Reverse active Line width Bullet size Align Left Right Demo.tsx import { Timeline } from '@mantine/core'; function Demo() { return ( <Timeline active={1} bulletSize={25}> {/* items */} </Timeline> ); } Expand code STYLES OVERRIDING Each Mantine component supports styles overriding for every internal element inside with classes or inline styles. This feature alongside other customization options allows you to implement any visual modifications to components and adapt them to fit almost any design requirements. Default slider styles 20% 50% 80% import { Slider } from '@mantine/core'; const marks = [ { value: 20, label: '20%' }, { value: 50, label: '50%' }, { value: 80, label: '80%' }, ]; function Demo() { return <Slider defaultValue={40} marks={marks} />; } Find elements that you need to change in styles API table NameDescriptionrootRoot elementlabelThumb labelthumbThumb elementtrackContainerWraps track elementtrackSlider trackbarTrack filled partmarkWrapperContains `mark` and `markLabel` elementsmarkMark displayed on trackmarkLabelLabel of the associated mark, displayed below track Then apply styles and add other props: 20% 50% 80% Demo.module.cssDemo.tsx .track { &::before { background-color: light-dark(var(--mantine-color-blue-1), var(--mantine-color-dark-3)); } } .mark { width: rem(6px); height: rem(6px); border-radius: rem(6px); transform: translateX(rem(-3px)) translateY(rem(-2px)); border-color: light-dark(var(--mantine-color-blue-1), var(--mantine-color-dark-3)); &[data-filled] { border-color: var(--mantine-color-blue-6); } } .markLabel { font-size: var(--mantine-font-size-xs); margin-bottom: rem(5px); margin-top: 0; } .thumb { height: rem(16px); width: rem(16px); background-color: var(--mantine-color-white); border-width: rem(1px); box-shadow: var(--mantine-shadow-sm); } Expand code View more examples FLEXIBLE THEMING Extend default theme with any amount of additional colors, replace shadows, radius, spacing, fonts and many other properties to match your design requirements. Ocean blue button Bright pink badge import { Badge, Button, MantineProvider, createTheme } from '@mantine/core'; const theme = createTheme({ fontFamily: 'Greycliff CF, sans-serif', colors: { 'ocean-blue': ['#7AD1DD', '#5FCCDB', '#44CADC', '#2AC9DE', '#1AC2D9', '#11B7CD', '#09ADC3', '#0E99AC', '#128797', '#147885'], 'bright-pink': ['#F0BBDD', '#ED9BCF', '#EC7CC3', '#ED5DB8', '#F13EAF', '#F71FA7', '#FF00A1', '#E00890', '#C50E82', '#AD1374'], }, }); function Demo() { return ( <MantineProvider theme={theme}> <Button color="ocean-blue">Ocean blue button</Button> <Badge color="bright-pink" variant="filled">Bright pink badge</Badge> </MantineProvider> ); } Build even faster with Mantine UI 120+ RESPONSIVE COMPONENTS BUILT WITH MANTINE Build your next website even faster with premade responsive components designed and built by Mantine maintainers and community. All components are free forever for everyone. Explore componentsView on GitHub HOOKS LIBRARY use-element-size Subscribe to element size changes use-debounced-value Debounce value changes use-idle Detect if user does nothing use-fullscreen Enter/exit fullscreen use-move Slide behavior over any element use-form Forms management library Resize textarea by dragging its right bottom corner Width: 396, height: 116 Demo.tsx import { useElementSize } from '@mantine/hooks'; import { rem } from '@mantine/core'; function Demo() { const { ref, width, height } = useElementSize(); return ( <> <textarea ref={ref} style={{ width: rem(400), height: rem(120) }} /> <div>Width: {width}, height: {height}</div> </> ); } Expand code READY TO GET STARTED? Mantine works in all modern environments – get started instantly with Next.js, Gatsby.js, Redwood, Vite or Remix by following getting started guide: Next.js Vite Remix RedwoodJS Gatsby JOIN THE COMMUNITY Join Discord community Ask questions, share feedback, get updates, learn about upcoming features and more Start a discussion Request new features, ask questions and provide feedback with GitHub discussions Follow on Twitter Get notified about new minor and major releases Welcome to Mantine, React components library that you always wished for Build fully functional accessible web applications faster than ever About ContributeAbout MantineChangelogReleases Community Chat on DiscordFollow on TwitterFollow on GithubGitHub discussions Project Mantine UIDocumentationGithub organizationnpm organization Built by Vitaly Rtishchev and these awesome people Join Discord communityFollow Mantine on Twitter React Angular Svelte Vue React Angular Svelte Vue React Angular Svelte Vue React Angular Svelte Vue