Skip to content

Commit

Permalink
[docs] Start to update the roadmap, remove legacy content
Browse files Browse the repository at this point in the history
  • Loading branch information
oliviertassinari committed Jul 25, 2020
1 parent d7a49a0 commit ac78312
Showing 1 changed file with 57 additions and 55 deletions.
112 changes: 57 additions & 55 deletions docs/src/pages/discover-more/roadmap/roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,19 @@

## Methodology

Material-UI is community driven – issues that resonate most with the community get the most attention.
Material-UI is community-driven – issues that resonate most with the community get the most attention.
Please **upvote** (👍) on GitHub the issues you are most interested in.
Thank you for participating [in the developer survey](https://material-ui.com/blog/2019-developer-survey-results/).
Thank you for participating [in the developer survey](https://material-ui.com/blog/2020-developer-survey-results/).

## Priorities

Here are the top priorities:

- 1.0 - **More components**. 🧰 This is challenging to address, as developing a fully-fledged component takes a considerable amount of time.
We are going to try the following strategy:
- Identify frequently needed components. There are many resources we can leverage for this: the developer survey answers, GitHub issue upvotes, Algolia search volume, Google search volume, documentation usage, npm downloads, etc.
We apply the following strategy:
- Identify frequently needed components. There are many resources we leverage for this: the developer survey answers, GitHub issue upvotes, Algolia search volume, Google search volume, documentation usage, npm downloads, etc.
- Prioritize the creation of frequently needed components.
- Encourage the usage of third-party components if they already exist and are well maintained.
- Offer an option to the highly used and well maintained components to move to the official organization: mui-org/x on GitHub, @material-ui/x on npm and x.material-ui.com for the documentation.
- 0.5 - **Better customization.** 💅 We want to make our component customization intuitive, no matter if you are using global CSS or styled-components:
- Use styled-components by default: [#6115](https://github.com/mui-org/material-ui/issues/6115).
- Allow the use of the Box props in all the core components: [#15561](https://github.com/mui-org/material-ui/issues/15561).
Expand All @@ -29,12 +28,7 @@ Here are the top priorities:
- Page documentation rating 🥇🥈🥉. We will integrate a rating module in all our documentation pages. This way, we can collect high-quality data points and prioritize the pages that need the most to be improved.
- Templates. They get people started really quickly, we need more of them!
- Beginner tutorials & Video lessons.
- 0.3 - **TypeScript.** 📏 There are two dimensions to this problem:
- The documentation. We want to provide a TypeScript variant of most of our demos.
You can help us out in [#14897](https://github.com/mui-org/material-ui/issues/14897), we have already covered +90% of them.
- The definitions. We are **continuously** improving them. For instance, we are working on moving the props descriptions to TypeScript, so you can access them directly from your IDE.
The codebase is written in JavaScript, we don't plan on migrating it to TypeScript in the near future. Upvote [#15984](https://github.com/mui-org/material-ui/issues/15984) if you want us to rewrite the core in a future version.
- 0.3 - **Performance.** 🚀 React abstraction has a cost. The more components you render, the slower your page will be. You will notice stark differences when rendering a large table or list.
- 0.2 - **Performance.** 🚀 React abstraction has a cost. The more components you render, the slower your page will be. You will notice stark differences when rendering a large table or list.
Performance is all about doing less work. We can leverage the following:
- Make the core faster.
- Avoid re-rendering. It's the responsibility of the user to prune the React rendering tree efficiently,
Expand All @@ -44,57 +38,65 @@ Here are the top priorities:
- 0.2 - **Bundle size.** 📦 You can keep track of our progress [following bundlephobia.com report](https://bundlephobia.com/result?p=@material-ui/core).
It's a continuous effort – v4 was [18% smaller](https://bundlephobia.com/result?p=@material-ui/[email protected]) than v3, while adding new features.
We are eager to find new bundle size reduction opportunities. We hope we can leverage these two in the future:
- A JSS to styled-component migration should help. Compare [JSS v10.0.0-alpha.24](https://bundlephobia.com/[email protected]) with [styled-components v5.0.0-beta.8](https://bundlephobia.com/[email protected]). We could save ~6 kB gzipped.
- Popper.js is working [on a smaller v2](https://bundlephobia.com/[email protected]) version. We could save ~4 kB gzipped.
- 0.2 - **TypeScript.** 📏 There are two dimensions to this problem:
- The definitions. We are **continuously** improving them. For instance, we are working on moving the props descriptions to TypeScript, so you can access them directly from your IDE.
The codebase is written in JavaScript, we don't plan on migrating it to TypeScript in the near future. Upvote [#15984](https://github.com/mui-org/material-ui/issues/15984) if you want us to rewrite the core in a future version.
- 0.2 - **Accessibility.** ♿️ We have relatively [few accessibility issues](https://darekkay.com/blog/accessible-ui-frameworks/), but we are eager to address them all. We would appreciate the help of accessibility experts.
- 0.2 - **Material Design Update.** 🎀 We are relatively up-to-date but the material design specification [is evolving](https://material.io/whats-new/), so should we.

## New components

Here are the components we will work on being supported in the Material-UI ecosystem, no matter if they are from @material-ui/core, a third-party project or a paid source:
Here are the components we will work on being supported in the Material-UI ecosystem, no matter if they are part of the [community edition](https://github.com/mui-org/material-ui) (MIT license) or [Material-UI X](https://github.com/mui-org/material-ui-x), a paid extension for enterprises:

- 🧪 In the lab, in progress to move into the core
- 🛠 Work in progress, will likely land in the lab
- 🧪 Close to become stable, already released as unstable
- 🛠 Work in progress, will or already released as unstable
- ⏳ Planning to build
- ⭐️ We will consider making some of the features paid (non MIT)
- ⭐️ We will make some of the features available in [Material-UI X](https://github.com/mui-org/material-ui-x) (non-MIT)

| Name | Status |
| ----------------------- | ------ |
| Rating | 🧪 |
| Skeleton | 🧪 |
| Speed Dial | 🧪 |
| Toggle Button | 🧪 |
| Tree View | 🧪 |
| Autocomplete | 🧪 |
| Combo Box | 🧪 |
| Multiselect | 🧪 |
| Alert | 🧪 |
| Pagination | 🧪 |
| Date Picker (& range) | 🛠 |
| Data Table | 🛠⭐️ |
| Carousel ||
| Dropdown ||
| Dropzone ||
| File Upload ||
| Image ||
| Navbar ||
| Nested Menu ||
| Numeric Input ||
| Scrollspy ||
| TopLayout ||
| Big Calendar | ⏳⭐️ |
| Charts | ⏳⭐️ |
| Sparkline | ⏳⭐️ |
| Color Picker | ⏳⭐️ |
| Gantt Chart | ⏳⭐️ |
| Gauge | ⏳⭐️ |
| Masonry | ⏳⭐️ |
| Pivot Grid | ⏳⭐️ |
| Rich Text Editor | ⏳⭐️ |
| Scheduler | ⏳⭐️ |
| Splitter | ⏳⭐️ |
| Tree View - Checkbox | ⏳⭐️ |
| Tree View - Drag & Drop | ⏳⭐️ |
| TreeSelect | ⏳⭐️ |
| Name | Status |
| :------------------------- | ------ |
| Rating | 🧪 |
| Skeleton | 🧪 |
| Speed Dial | 🧪 |
| Toggle Button | 🧪 |
| Autocomplete | 🧪 |
| Combo Box | 🧪 |
| Multiselect | 🧪 |
| Alert | 🧪 |
| Pagination | 🧪 |
| Timeline | 🧪 |
| Date Picker | 🛠 |
| Date Range Picker | 🛠⭐ |
| Data Grid | 🛠⭐️ |
| Data Grid - Column pinning | ⏳⭐️ |
| Data Grid - Nested row | ⏳⭐️ |
| Tree View | 🛠 |
| Tree View - Multiselect | 🛠⭐️ |
| Tree View - Checkbox | ⏳⭐️ |
| Tree View - Drag & Drop | ⏳⭐️ |
| Tree View - Virtualization | ⏳⭐️ |
| Carousel ||
| Dropdown ||
| Dropzone ||
| File Upload ||
| Image ||
| Stack ||
| Navbar ||
| NProgress ||
| Nested Menu ||
| Numeric Input ||
| Scrollspy ||
| TopLayout ||
| Splitter | ⏳⭐️ |
| Masonry | ⏳⭐️ |
| Pivot Grid | ⏳⭐️ |
| Big Calendar | ⏳⭐️ |
| Sparkline | ⏳⭐️ |
| Gauge | ⏳⭐️ |
| Charts | ⏳⭐️ |
| TreeSelect | ⏳⭐️ |
| Rich Text Editor | ⏳⭐️ |
| Gantt Chart | ⏳⭐️ |
| Color Picker | ⏳⭐️ |

> ⚠️ **Disclaimer**: We operate in a dynamic environment, and things are subject to change. The information provided is intended to outline the general framework direction. It's intended for informational purposes only. We may decide to add/remove new items at any time depending on our capability to deliver while meeting our quality standards. The development, releases and timing of any features or functionality of Material-UI remains at the sole discretion of Material-UI. The roadmap does not represent a commitment, obligation or promise to deliver at any time.

0 comments on commit ac78312

Please sign in to comment.