Make it fast as possible. Current development environment starts in ~10s Build time as fast as possible Bundle size should be minimum as possible
yarnInstall dependencies- Copy
.env.exampleto.env yarn startStart developmentyarn start:storybookStart storybookyarn buildBuild for production- Install wallaby plugin for you IDE
- Configure wallaby test runner
yarn testRun tests to check if everything is workingyarn prepushRun before each push
- webpack v3
- dashboard
- webpack settings with typescript
- separated settings for development and production
- typescript v2.6
- tslint (lint typescript)
- import json supported
- airbnb coding style rules
- react v16
- redux
- react-redux
- redux-loger
- hot reload
- scss/css module
- stylelint (lint scss and css)
- auto typings for css modules
- scss/css hot loader
- jest (for tests)
- git
- perfect attributes
- hooks (run tasks before push)
- travis (for deployment)
- yarn (For better dependencies lock)
- save exact version
- configured releases
yarn version
- editorconfig (consistent coding styles for different IDE)
- IDE settings
- live templates for JetBrains
- settings for Visual Studio Code
- SourceMaps
- Source maps for typescript
- Source maps for scss/css modules
- Storybook Demo
- With actions
- Addons
| Command | Description |
|---|---|
yarn start |
Start development enviroiment |
yarn start:storybook |
Start storybook |
yarn lint |
Lint typescript files |
yarn lint:css |
Lint scss/css files |
yarn test |
Start test enviroiment for development |
yarn test:coverage |
Display tests coverage |
yarn start:server |
Test SSR locally |
We have very precise rules over how our git commit messages can be formatted. This leads to more readable messages that are easy to follow when looking through the project history. But also, we use the git commit messages to generate the our change log.
The commit message formatting can be added using a typical git workflow or through the use of a CLI
wizard (Commitizen). To use the wizard, run yarn run cm
in your terminal after staging your changes in git.
A detailed explanation borrowed from angular and can be found in this document.
- Automate Changelist.md
- E2E Tests
- i18n
- Red box for react errors?
- Server side rendering
- Use redux-observable instead saga
- Assets (css, js) caching
- HMR route v4