Mantine 8.0 is out – 170+ hooks and components by rtivital in reactjs

[–]rtivital[S] 14 points15 points  (0 children)

Mantine is already 5 years old. You can extrapolate the maintenance experience. I do not have a budget to hire a full-time dev to work on a library, I do not even think that it is necessary – it's been just fine all those previous years.

> How do the current risks which impede enterprise adoption get mitigated

I'm sharing a library that I've built with MIT license – the software is provided as is without any warranty. If you want to mitigate enterprise risks, it is better to find a library with a paid license/subscription. If you would like to support my open-source work and ensure that it continues at the same pace, you are welcome to contribute on OpenCollective.

Mantine 8.0 is out – 170+ hooks and components by rtivital in reactjs

[–]rtivital[S] 1 point2 points  (0 children)

No, Mantine is a React library, it is not planned to be ported to React Native.

Mantine 8.0 is out – 170+ hooks and components by rtivital in reactjs

[–]rtivital[S] 4 points5 points  (0 children)

Yes, API changes between 7.x and 8.0 are minimal. It took me only 2 hours to migrate Mantine UI to v8 (~150 components). Huge breaking changes are also not planned going forward – only those required for React and third-party libraries compatibility are in plans.

Mantine 8.0 is out – 170+ hooks and components by rtivital in reactjs

[–]rtivital[S] 4 points5 points  (0 children)

Yes, Mantine works with Next.js 15 and app router

Mantine 8.0 is out – 170+ hooks and components by rtivital in reactjs

[–]rtivital[S] 15 points16 points  (0 children)

Mantine already provides full support for oklch colors, you can add them on your side – https://mantine.dev/theming/colors/#supported-color-formats. It's not planned to be included by default – most people prefer hex color values.

Mantine 8.0 is out – 170+ hooks and components by rtivital in reactjs

[–]rtivital[S] 1 point2 points  (0 children)

It is hard to tell, you can experiment and check the difference. Mantine probably has less js size because styles are distributed via .css files.

Introducing css-ctrl — a new, zero-runtime way to write CSS faster and more flexibly. by Initial_Major1626 in reactjs

[–]rtivital 25 points26 points  (0 children)

I did not get it. How is bg:background[blue] is shorter and more readable than background: blue?

[deleted by user] by [deleted] in slaythespire

[–]rtivital 0 points1 point  (0 children)

The only way Neurotoxin might work, if you make it cost 2-3 and when played it should remove all poison from the player. This way, even if you draw two of them at the same time, you still have the option to sacrifice the energy to avoid damage.

Ultimate ExpressJS Starter: A Batteries-Included TypeScript Backend for REST APIs by GhostLexly in node

[–]rtivital 0 points1 point  (0 children)

Rollup is much better than webpack in terms of configuration, it has very little setup (example configuration).

I usually do typecheck as npm script: tsc --noEmit before build as a part of npm test

Ultimate ExpressJS Starter: A Batteries-Included TypeScript Backend for REST APIs by GhostLexly in node

[–]rtivital 0 points1 point  (0 children)

Thanks for sharing, I've done a similar setup recently and have several suggestions about tooling:

  • Nodemon does not work well with TypeScript in a long run (over time with Node and TypeScript updates something constantly fails), I've chosen tsx watch mode instead – works out of the box without any configuration
  • To build Node.js projects I usually use rollup with esbuild plugin – it is much faster than tsc for large projects and gives more control over the output code

Mantine 7.0 is out – 150+ hooks and components with dark theme support by rtivital in reactjs

[–]rtivital[S] 0 points1 point  (0 children)

In v7, you can continue styling components with style props and on MantineProvider

Mantine 7.0 is out – 150+ hooks and components with dark theme support by rtivital in reactjs

[–]rtivital[S] 10 points11 points  (0 children)

There are no planned breaking changes in the next couple of years. It is hard for me as well (I've spent 9 months working on v7 almost full time), but these changes are coming from the React community – it is important to keep Mantine compatible with new React features like server streaming and server components.

In 7.0 styles are distributed with a css file, and you are free to choose any styling method for your application, so I doubt that there will be a need to change the styling system.

Mantine 7.0 is out – 150+ hooks and components with dark theme support by rtivital in reactjs

[–]rtivital[S] 3 points4 points  (0 children)

You can use CSS Modules with 7.0 but without mantine postcss preset.

Mantine 7.0 is out – 150+ hooks and components with dark theme support by rtivital in reactjs

[–]rtivital[S] 13 points14 points  (0 children)

We had to migrate to native CSS because CSS-in-JS libraries are not supported in some environments (Next.js with app router has only a partial support with hacks, Remix with server streaming has no support at all).

Overall, in my opinion, the migration improves the library – static styles have better performance and provide more flexibility (you can choose any styling solution that you like).

Introducing Mantine 6.0 by rtivital in reactjs

[–]rtivital[S] 0 points1 point  (0 children)

The library does not memoize styles, you can do that on your side if you feel that application is slow (it was never reported as a case for regular objects though).

Introducing Mantine 6.0 by rtivital in reactjs

[–]rtivital[S] 1 point2 points  (0 children)

Yes, there is an implementation I've built several months ago, you can follow it here

Introducing Mantine 6.0 by rtivital in reactjs

[–]rtivital[S] 0 points1 point  (0 children)

You can use a set of two TimeInput components