Dash Mantine Components Roadmap

Dash Mantine Components Roadmap

As many of you know, Dash Mantine Components (DMC) is a wrapper around the popular Mantine library. By using Mantine, we can offer a rich set of components for Dash that makes it easier to create responsive and attractive applications. Over the past few years, Mantine has evolved rapidly, with major updates that introduced new features and sometimes brought breaking changes. This post will go over our roadmap for DMC, what’s changing, and how we’re making things more stable moving forward.

1. Background: Mantine Major Releases and Their Impact on DMC

Mantine has grown quickly since its launch, with regular major releases that have added new features and made significant improvements – and also included breaking changes. Each big update has also required DMC to update in order to stay compatible.

Mantine Major Releases

  • Version 7.0 – September 2023

  • Version 6.0 – March 2023

  • Version 5.0 – July 2022

  • Version 4.0 – March 2022

  • Version 3.0 – October 2021

Here’s a quick look at recent DMC releases and how they aligned with Mantine’s:

DMC Releases with Breaking Changes

  • 0.14.0 – April 2024 (Uses Mantine 7.0)

  • 0.13.0a1 – August 2023 (Uses Mantine 6.0)

  • 0.12.0 – March 2023 (Uses Mantine 5.10.5)

  • 0.7.0 – March 2022 (Uses Mantine 4.0)

We know these changes haven’t been easy for users to manage, and we appreciate your patience. The good news is that this fast release cycle is now slowing down, so there should be fewer changes and more stability going forward.

2. Looking Forward: Stability with Mantine V7 and DMC’s Future

Mantine V7 is still being updated with new features and bug fixes, but there are currently no plans for an upcoming V8. This is positive news for DMC users, as it means fewer changes that could disrupt your work. Now that Mantine V7 is the focus, we’re excited to build on a stable foundation for DMC without having to manage frequent, major updates.

The following was post by the Mantine maintainers on their Discord recently and is worth repeating here:

Is Mantine 8.0 planned to be released soon?

No, version 8.0 is not currently in development (as of October 2024). Further support is planned to be provided with minor and patch versions.

If 8.0 is not planned soon, does it mean that the library will not receive updates to support the latest changes in frameworks/bundlers/React 19+?

Version 8.0 is not planned to avoid breaking changes. Support for the latest versions of Next.js/Remix/Vite/React 19+ might not require breaking changes. In this case, you will be able to continue using 7.x with the latest stack.

Is Mantine well maintained?

Yes, new features are added with minor releases ~ every 2 months. Patches are released 2-4 times per minor release (~ every 2 weeks). Mantine is fully compatible with the latest version of all popular frameworks/bundlers (Next.js/Remix/Vite).

Is Mantine 8.0 planned at all?

Yes, Mantine 8.0 is planned to be released in the future. Some Mantine packages (charts, carousel, tiptap) depend on third-party libraries which might require updating to support the latest version of React.

For DMC, this means smoother updates with more focus on reliability and performance. We’ll be able to keep our library in sync with Mantine more easily, and you’ll have a more consistent experience as a developer.

3. DMC Roadmap and Goals

Here’s a look at our roadmap for DMC, including plans for a stable major release and development priorities.

Preparing for a Major DMC Release

Our next big goal is a stable, major release of DMC. The current version, DMC 0.14.6, is already built on Mantine 7, so we don’t anticipate any breaking changes as we transition to a major DMC release. Our next step is to add thorough testing for most components to help catch issues early and make DMC as reliable as possible.

New Versioning System

For the major release, we’ll adopt a new versioning system that matches Mantine’s. This means DMC version numbers will align with the version of Mantine they’re based on. With this system, you’ll be able to easily check which version of Mantine DMC is using and refer to the corresponding Mantine documentation if needed.

Key Development Priorities

After the major release, we’ll focus on several main areas:

  • Fixing Bugs: Quickly addressing any issues that arise will be a top priority.

  • Improving Performance: We plan to add performance improvements, like lazy loading, which can help reduce load times and improve the user experience. Lazy loading means only loading components when they’re needed, which helps speed up the initial load of an app.

  • Adding More Mantine Features: Our goal is to bring in features from Mantine that aren’t yet in DMC, to keep both libraries as similar as possible.

  • Incorporating Features from Other Dash Libraries: We’re also looking to add popular features from other Dash libraries, like how the debounce prop works in Dash Core Components and Dash Bootstrap Components.

For details on these priorities, please see GitHub Issues and the new GitHub Discussions

We’ll prioritize requests from the community, especially those with the most upvotes on GitHub.

We also welcome contributions, so if you have ideas or want to help improve DMC, feel free to open an issue, submit a pull request or start a topic on discussion on our GitHub.

5 Likes

Great context for the roadmap and such an amazing project.

If you ran for president I’d vote for you :dancer: lol

Just wanted to thank you and everyone thats been contributing to dmc, I use this package in everything I build at this point. The work @snehilvj laid out with creating this component was an inspiration to me launching my own components.

Overall impressive watching people from the dash community come together and build this out in such a proffessional maner.

And to not only create a port to an awesome library but to document it in a clean interactive way has really helped so many people build better applications.

Just wanted to build upon this post and highlight in an @adamschroeder top-community-contributors way to give recognition to what has been an amazing project. And share some data science around this project.

Also I’d like to take a moment and especially highlight @AnnMarieW as she is way too modest to state it. But as the new maintainer of dmc, has contributed a substantial amount of work in getting dmc to the best state it can be.


Your a Rockstar :star_struck::rocket:


Lastly jump into the dmc discord, star these projects and contribute to open source by jumping in!

Discord:

@snehilvj just stared a github discussion for anyone interested in jumping into the conversation:

6 Likes