[RFC] Grow with Design #27803
Replies: 5 comments 13 replies
This comment has been hidden.
This comment has been hidden.
This comment has been hidden.
This comment has been hidden.
-
Is there going to be a path forward for those of us who do care that Material-UI was built upon Material Design, and who had hoped that the library would continue to be updated as the Material Design spec was updated? From the sounds of it, your support for this is now deprecated in favour of your new design language called "Joy". Mui providing me components for Material Design is vastly more important to me than the DX. Otherwise I'd use any other library with its own design language like Bulma or Tailwind. What sets this project apart is its tight coupling with Material Design. I recognize that this is an open source project that I'm not paying for, but I'd really appreciate getting some direction or migration path for v6 and beyond. |
Beta Was this translation helpful? Give feedback.
-
Hey all, I'm a huge fan of MUI and I'm excited what you're working on. I'm also eager to have a low code solution using MUI so I'm glad you're moving in that direction. I do have one request for the low code solution: please make is straightforward to create output which is fully open source. The open source projects I work on would be happy to pay something for the low code solution so we can speed up our dev but we need to make sure whatever is output and we include in our project is open source and only uses open source code. I appreciate not everyone will have that restriction but anything that can be done to support this specific use-case would be very valuable. |
Beta Was this translation helpful? Give feedback.
-
I've just spent the better part of a day attempting the migration from v4 to v5. While I think I followed all the guidance and ran all the transformers, I'm left with a completely broken app. These all look to me like issues from deep within the components themselves buried in the node_modules directory. I am neither capable of nor willing to reverse-engineer and/or debug these. My bottom line is that from my vantage point, this is no migration -- it is faster for me to do a rewrite from scratch of my app. Given what I find at the top of this page, I want to be very clear. If I do a re-write, it will be to replace ALL of the The information I find at the top of this absolutely terrifies and repels me. Let me be crystal clear: The ONLY reason I'm using ANY of this tooling is so that I can stay consistent with the Google/Material appearance and behavior. My clients and users expect that from the apps they get from me. If "MUI" or whatever you call yourselves now attempt to "rebrand" yourselves away from Google, you've lost me. Inventing new UIX for the sheer sake of novelty is the epitome of shooting yourselves in the foot. UIX is HARD and takes time, resources, and discipline to do well. Surely the wealth of broken and half-broken apps scattered all over the web and our phones illustrates this. The most important function of any UIX is to be USEFUL to the user. Rolling your own UI is even more likely to fail than rolling your own security code -- I hope everybody understands that the latter is a really really bad idea. Here's my takeaway:
I thought I was dealing with a reasonable stable and legitimate entity that existed to make the Google Material Design easily accessible to React apps. I've invested more than a year of my time in |
Beta Was this translation helpful? Give feedback.
-
As we have discussed, I'll try to move the discussions from Notion to GitHub so it's easier to follow and track once they get settled. But first, it seems a good opportunity for laying out some of the context and motivations around them for supporting the decisions we'll have to make.
Context on the OKR
This quarter, we started using OKRs to guide our work. Essentially, it's a way to prioritize, organize and measure initiatives to move the company forward. One of the objectives I believe encompasses many of the initiatives we've been talking about is the Grow with design one, which was motivated by two main problems:
Therefore, two main broad initiatives will make us tackle the aging of Material Design and also enable us to grow out of it. First, rebranding the company to position it in a way that is larger than an MD's implementation. Second, releasing products that aren't strictly related to Material Design.
The new branding
Up to now, we've leveraged the traction that Material Design provided us. Since React is from Facebook, it seems like Google has somewhat of a resistance to giving MD official React support. We've been filling that gap. And the thing is, as I've said, we do so much more than only fill this gap. The point of rebranding is to create space for new things out of Material Design to happen and thus to position the company in a larger and clearer strategic path. There are some tasks following the rebranding epic:
The new products
Following the rebranding of the company, there are three main products on planning for us to expand the horizon and to reach larger audiences with different design and development needs.
An unstyled version of the Core components
This is making the vision of "material to build UIs" a reality. We will provide the components stripped from opinionated styles, with built-in accessibility support, enabling you to leverage its functionally and to apply whatever styling you think suits them better.
A second design system
We know that many people use today's Material-UI library not because of the design but rather because of its completeness and robustness. Fortunately, we've built a very strong theming solution that already enables developers to print whatever design language they need/want. However, it's not uncommon to receive feedbacks around customization complexity, which turns many away from using the lib. Developing a new design system is an opportunity to tackle that while providing new values:
A low code solution
Providing a low code product not only will open a new market for the company but it will enable quicker and simpler use of our components. People who aren't really developers will be able to prototype and build upon the library, capturing many of the values we've already discussed here.
How to roll it all out? (deprecated)
How to roll it all out?
Ok, context set! Even though we're still developing these initiatives, already discussing their rollout plan is a good practice to create a time constraint and also to position them into a cohesive release narrative/strategy.
However, I'll try to attain myself into only proposing a release order instead of actual deadlines. I think we can do that together. My main concern is to have a clear story being told followed by the given context. I'll also take into consideration the discussions we had these past few weeks on Notion and on meetings. But, of course, feel free to criticize it all!
From v5 to a new branding to new products
The plan for v5 has already been outlined for quite some time. As with any major release, it is packed with new stuff that probably has gaps from which bugs will come out. And we'll need to tackle it following its launch. So it's probably a good thing to reserve the beginning of Q4 (mentioning this specific deadline because it was already the plan) to rollout and take care of v.5.0.0 related issues.
I believe that releasing the new branding is what will open the gates for new products to come in. It's a shot at better explaining the products/company and to build excitement and hype for the indeed exciting stuff that's on the way. So, with that in mind, I believe that we should release it after stabilizing v.5.0.0 launch. By doing so, we have more time to stress and decide on the breaking changes (mainly the package renaming/rearranging), to polish the new website (which has several pages), and to settle on the documentation rearranging questions.
Finally, what also seems like an appropriate thing to do when releasing a new branding is to use it as an opportunity to also launch a new product. And if we're about to use the new branding as a vehicle to disassociate with Material Design, then releasing the first version of the 2nd design system and the unstyled package is doing that objectively.
Therefore, we tell a clear story: we're rolling out the Material-UI latest version as planned and then we'll become larger than Material Design, and here you have it, two different Material Design products that concretize it.
Update
This post was initially meant to be a discussion space around how to roll out the upcoming initiatives we have ongoing/planned. As we have released v5.0.0 stable and the new brand on September 15th, 2021, I have archived the "How to roll it all out?" section of this write-up — it's now a bit deprecated. But please check v5 and the new website and tell us what do you think! :)
Regarding the other initiatives mentioned above, a quick "update":
Beta Was this translation helpful? Give feedback.
All reactions