This page serves as an index for all the technical & design guidelines around the creation of a new item.
- .zip maximum size: What's the maximum size allowed for the archives?
- Browser support: What browsers do I need to support?
- Use of prettier with the same baseline as the open-source repository: https://github.com/mui/material-ui/blob/master/prettier.config.js
- If going for a dependency that is already covered in the MUI open-source components, have a good justification for it, Can I use external libraries? If you are using recharts over MUI X charts, it's fair game, but we would love to know why so we know what to fix for the next template author.
- A correct use of links. The best way to test this: Does cmd + click open the link in a new tab? If not, it's not done correctly.
- Use of a sane set of eslint rules and not error. You can refer to https://github.com/mui/material-ui/blob/master/.eslintrc.js as a health set of default rules.
- No Accessibility, Best Practices, and SEO errors reported by https://pagespeed.web.dev/.
- No low-resolution images. Build everything for >200 PPI screens.
- Optimization of the images. For example, SVG should be optimized, it wouldn't make sense to have an SVG x10 bigger than it needs to be, because it has a lot more resolution data than needed.
- Do not use `<Box>` without using its props. A better alternative is to use a raw div.
- Use `shouldForwardProp` for reusable components.
- Do not use `React.FC`. It's not needed https://react-typescript-cheatsheet.netlify.app/docs/basic/getting-started/function_components/.
- Unless using Next.js or an automation plugin, Do not import from the root npm package directly, especially not from the root of the icon package. Import one level deep instead as in the demos of the docs to improve the performance in dev mode.
Comments
0 comments
Please sign in to leave a comment.