Клонирование проекта SSH:
git clone git@github.com:Queenstown-praktikum/imadjinarium.git
npm i
- инициализация проектаnpm run start
- запускает режим разработки webpack-dev-server PORT=3000npm run build
- сборка проекта webpack -> distnpm run lint
- проверка eslintnpm run lint:fix
- исправление eslintnpm run stylelint
- проверка stylelintnpm run stylelint:fix
- исправление stylelintnpm run format
- запускает prettiernpm run storybook
- запускает storybooknpm run build-storybook
- сборка storybook
В проекте подключена husky
, на pre-commit
запускает lint-staged
:
"lint-staged": {
"client/**/*.(js|jsx|ts|tsx)": "eslint --fix",
"client/**/*.(css|sass|scss)": "stylelint --fix"
}
-
Git
master
- главная ветка, от нее создаем ветки спринтов, по окончанию задач спринта вливаем вmaster
sprint_№
- ветка спринта от нее создаем задачи и в нее же их мерджим- Фичи
feature/issues-№
- Баги
bagfix/issues-№
- Коммиты
issues №: ....
deploy
- развертывание на Heroku - Фичи
-
Умные компоненты храним в папке
Features
-
Components, Feature, Pages ... экспортируем из осмысленно наименованных файлов, не из
index.tsx
При мерже в deploy
автоматически происходит развертывание
Статья
Для ручного развертывания:
heroku container:login
heroku create <name-app>
heroku container:push web
heroku container:release web
heroku open
Посмотреть логи:
heroku container:login
heroku logs --tail -a <name-app>
Стоит обратить внимание что Heroku при развертывании использует свой порт
достаем его через process.env.PORT