React Most Wanted uses a Layer based concept. Each layer has its own functionality and every layer above uses the features of the one below.
React Most Wanted is based on 3 layers/shells:
base-shell - The base for every RMW project. It includes the management of the `Auth` state, Internationalization state, the basic UI Layout, and the routing.
mui-shell - This layer includes Material-UI design into the base-shell with handy components like Page, a responsive Menu, and settings for language.
rmw-shell - This layer includes all the features from the previous ones and adds integration to Firebase by providing handy tools to kick start a new React project with the full power of Firebase.
React Most Wanted is a set of starter kits, tools, features, and best practices that you can choose from and use around your React projects.
The features include:
Build on Create React App
Material UI: Material Design ready-to-use React Components
Code splitting: MPA (Multi Page Application) ready. A Large codebase can be split into separate bundles that load different parts of the application, lazy-loading the different bundles on demand.
Firebase: Use Firebase's platform as a backend and database, with a sync between Firebase and the app state
The resulting App is a full functional PWA (Progressive Web App) and has an "all 100" Points Lighthouse report
Authentication and authorization with roles and permissions
Push notifications within App Notifications UI
Theming
Internationalization
Build in CI/CD with Travis and Browserstack (optional)
Real-time Forms
and many more...
We appreciate any contribution!
See Contributing for details.
Thanks to BrowserStack for providing the infrastructure that allows us to test in real browsers.
Thanks to GitBook for providing us a great documentation tool.
This project uses the MIT license.