hearthstone-ts
MERN TypeScript full stack project. Cards data comes from HearthstoneJSON.
Setup:
npm i
- Run
npm run bootstrap
to prepare project. - Run
npm run dev
to run development.
Client
- React
- NextJS (SSG & SSR)
- React Query & Axios
- chakra-ui
Server
- NodeJS
- Express
- Unit testing with Jest
- Mongoose
- Schema validation with Yup
- Passport auth (Google & Facebook)
Database
To initialize run from server
directory (configured .env
file reqired):
npm run server:migration
CI/CD
- Docker Compose
- GitHub Actions
- Eslint & Prettier
- Unit tests
- CodeQL (JS & TS).
- Code Climate.
Lerna
Bootstrap project:
Run npm run dev
from client
and server
package:
npx lerna run dev --parallel --scope='{client,server}'
Install commons
as dependency (after adding "commons": "0.0.1",
in package.json
dependencies):
npx lerna bootstrap