git clone https://github.com/MarkosKon/another-react-boilerplate.git
cd another-react-boilerplate
rm -rf .git (remove .git folder)
touch .env (create a .env file)
npm i && npm start
- Configured with Webpack 4
- Eslint with AirBnb rules to feel bad about yourself.
- Jest for testing.
- Registers a basic service worker in production with workbox-webpack-plugin.
- The contents of the public folder are put into the root of the dist folder when building similar to cra.
- pre-commit runs 'lint' and 'test' scripts before committing with git to ensure code quality and frustration.
- The App component holds most of the application state. It renders a Router with the pages wrapped in a Layout component.
- The Layout component can be used to wrap the pages. It takes as properties a page title and a description for SEO and a page as child.
- npm start: Starts a webpack dev server with hot reloading.
- npm run build: Builds the project and exports at dist folder.
- npm run lint: runs lint on src folder and it's children.
- npm run lint-fix: same as lint but tries to fix the lint errors
- npm run test: runs jest on all files that end with *.test.js
- npm run test-w: runs jest with the --watch flag.
- prop-types for type checking. Eslint with AirBnb requires type checking for your props.
- react-helmet for SEO. It's used in Layout for title, meta description, adding icons for site.webmanifest or loading external scripts.
- react-router-dom for client side routing.
- styled-components for component styling.
Lighthouse score for uploaded project on Netlify.