Игра Space runner - командная разработка от идеи до результата по методологии scrum и git flow с cross-review. В разработке принимали участие 4 человека.
Доступно по ссылке. Короткое видео с функционалом.
- TypeScript;
- React - для всего, кроме игры;
- Redux, Redux-Thunk, Redux-Toolkit - стейт-менеджмент;
- Canvas API - для отрисовки игры;
- Ant-D & PostCSS — стилизация;
- React Testing Library & Jest — тесты;
- Vite — сборщик;
- Express — веб-сервер;
- PostgreSQL — база данных;
- Sequelize — ORM;
- Docker + github actions для автодеплоя на VDS;
- EsLint, Prettier — линтеры.
- Убедитесь что у вас установлен
nodeиdocker - Выполните команду
yarn bootstrap- это обязательный шаг, без него ничего работать не будет :) - Выполните команду
yarn dev - Выполните команду
yarn dev --scope=clientчтобы запустить только клиент - Выполните команду
yarn dev --scope=serverчтобы запустить только server
В этом проекте используется monorepo на основе lerna
Чтобы добавить зависимость для клиента
yarn lerna add {your_dep} --scope client
Для сервера
yarn lerna add {your_dep} --scope server
И для клиента и для сервера
yarn lerna add {your_dep}
Если вы хотите добавить dev зависимость, проделайте то же самое, но с флагом dev
yarn lerna add {your_dep} --dev --scope server
Для клиента используется react-testing-library
yarn test
yarn lint
yarn format
yarn build
И чтобы посмотреть что получилось
yarn preview --scope client
yarn preview --scope server
В проекте используется lefthook
Если очень-очень нужно пропустить проверки, используйте --no-verify (но не злоупотребляйте :)
Перед первым запуском выполните node init.js
docker compose up - запустит три сервиса
- nginx, раздающий клиентскую статику (client)
- node, ваш сервер (server)
- postgres, вашу базу данных (postgres)
Если вам понадобится только один сервис, просто уточните какой в команде
docker compose up {sevice_name}, например docker compose up server
