Sometimes start a new project is hard that's why this project becomes a reality. No configuration is needed but everything is here so you can improve or change anything you want.
Everything is optimized to bring you and your users the best experience developing and using it.
The project is running at: https://react-firebase-starter-d0953.firebaseapp.com/
$ git clone https://github.com/arkgast/react-firebase-starter
$ cd react-firebase-starter
$ yarn || npm install
To install dependencies yarn is recommended to install it just run
npm install yarn -g
$ npm start
$ npm run build
$ firebase deploy
# Start firebase local server to test if everything is right
$ firebase serve --port 9000
In order to deploy you have to change the default project id to your own in
.firebaserc
in this case the id is react-firebase-starter-d0953. Check out this docs
$ npm run lint # lint js and scss
$ npm start # start dev server
$ npm start:dash # start dev server with eye candy dashboard
$ npm run build # prepare to deploy
$ npm run deploy # deploy to firebase
- React
- Redux
- React Router v4 (with animated transitions)
- Firebase authentication
- Jest
- Webpack 2
- ES6 - Modern Javascript syntax via babel
- SASS support
- Autoprefix CSS via autoprefixer
- Pack same CSS media query rules into one via postcss
- Automatic HTML generation
- ES6 and SASS linting via eslint and stylelint
- Split webpack configuration in development and production
- Cached on startup so make next compilation faster
- Great application organization
- Run local server via webpack-dev-server
- Hot reloading via react-hot-reloader and HMR
- Provides an offline experience via offline-plugin
- Separate CSS files via extract-text-webpack-plugin
- Firebase deployment via firebase
- Code-splitting and async chunk loading
- Compressed assets files