A Node Based TypeScript boiler plate codebase for large scale application and micro-services based projects. This project setup has following features.
- Docker Setup using Docker compose
- Unit Testing using Jest Framework
- E2E Using Supertest
- Multilanguage support using i18n packages
- Input validation using express validator
- Service based architecture followed
- Logging used with Winston package
- API documentation using with Swagger
- Linting using with ESLint
- Code Formatting using with Prettier
- Prisma ORM used
- Dependency Injection using Inversify
npm install
cp .env.sample .env
npm run dev
npm run build
npm run test
Check lint errors
npm run lint:check
Fix lint errors
npm run lint:fix
Check the format
npm run format:check
Fix format errors
npm run format:fix
docker compose up -d --build
make sure your DB connections allowed from container, The localhost in the ENV won't work if you trying from docker without allowing mysql configuration to access your DB remotely
npm run prisma:generate
npm run prisma:migrate
http://localhost:PORT/api-docs