Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ROADMAP] Update the roadmap #11606

Merged
merged 4 commits into from
May 29, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions ROADMAP.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
# Roadmap

The roadmap is a living document, and it is likely that priorities will change, but the list below should give some indication of our plans for the next major release, and for the future.

Our priorities:
1. **Material Design**. The Google Design team has recently released a new iteration on the Material Design specification which is focused on *themability*. This is great news! We will do our best to keep up to date. It also validates that heavily investing in customizability for v1 was a good call. We will continue our efforts in this area.
1. **More utils**. We want to work on new utility components: Spacing, Display, Color, etc.
1. **Performance**. We can’t optimize something we can’t measure, and we don’t currently have a CI performance benchmark, so we will need to build one and start investigating bottlenecks.
1. **Learning materials**. The quality of the documentation is equally as important as the quality of the implementation, and while the reference documentation is comprehensive, we could author a learning tutorial like Next.js has done, or an egghead.io course.
1. **Themes**. We want to provide common layouts example to make getting started even easier. We also plan on adding more premium themes.
1. **Documentation**. We want to translate the documentation into Chinese and other languages. Any help is welcomed!
1. **Bundle size**. The library needs to be as small as possible, so we need to work on solutions to further reduce the bundle size, for example, supporting Preact or Nerv can help.
1. **Type checking**. We will continue to improve the TypeScript and possibly the Flow coverage of the library.
12 changes: 9 additions & 3 deletions docs/src/modules/components/Notifications.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/* eslint-disable react/no-danger */

import 'isomorphic-fetch';
import React from 'react';
import Button from '@material-ui/core/Button';
import Snackbar from '@material-ui/core/Snackbar';
import 'isomorphic-fetch';

function getLastSeenNotification() {
const seen = document.cookie.replace(
Expand Down Expand Up @@ -43,11 +43,17 @@ class Notifications extends React.Component {
message: {},
};

componentDidMount = async () => {
async componentDidMount() {
this.mounted = true;

// Prevent search engines from indexing the notification.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

if (/glebot/.test(navigator.userAgent)) {
return;
}

await getMessages();
this.handleMessage();
};
}

componentWillUnmout() {
this.mounted = false;
Expand Down
11 changes: 6 additions & 5 deletions docs/src/pages/demos/snackbars/CustomizedSnackbars.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import Button from '@material-ui/core/Button';
import CheckIcon from '@material-ui/icons/Check';
import ErrorOutlineIcon from '@material-ui/icons/ErrorOutline';
import InfoIcon from '@material-ui/icons/InfoOutline';
import CheckCircleIcon from '@material-ui/icons/CheckCircle';
import ErrorIcon from '@material-ui/icons/Error';
import InfoIcon from '@material-ui/icons/Info';
import CloseIcon from '@material-ui/icons/Close';
import green from '@material-ui/core/colors/green';
import amber from '@material-ui/core/colors/amber';
Expand All @@ -15,9 +15,9 @@ import WarningIcon from '@material-ui/icons/Warning';
import { withStyles } from '@material-ui/core/styles';

const variantIcon = {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only filled icons for consistency.

success: CheckIcon,
success: CheckCircleIcon,
warning: WarningIcon,
error: ErrorOutlineIcon,
error: ErrorIcon,
info: InfoIcon,
};

Expand All @@ -38,6 +38,7 @@ const styles1 = theme => ({
fontSize: 20,
},
iconVariant: {
opacity: 0.9,
marginRight: theme.spacing.unit,
},
message: {
Expand Down
6 changes: 4 additions & 2 deletions docs/src/pages/versions/StableVersions.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
/* eslint-disable react/no-did-mount-set-state */

import 'isomorphic-fetch';
import React from 'react';
import PropTypes from 'prop-types';
Expand Down Expand Up @@ -49,7 +51,7 @@ class StableVersions extends React.Component {
docs: [],
};

componentDidMount = async () => {
async componentDidMount() {
const branches = await getBranches();
let docs = branches.map(n => n.name);
docs = docs.filter(version => version !== 'latest');
Expand All @@ -73,7 +75,7 @@ class StableVersions extends React.Component {
// The latest version is always using the naked domain.
docs[0].url = 'https://material-ui.com';
this.setState({ docs });
};
}

render() {
const { classes } = this.props;
Expand Down