Boiler plate for nest js with postgres. It has two branches.
Master branch contains following
- Users module
- Auth module (JwtAuth Guard)
- Passport jwt strategy
- Seeders (users)
- Global exception handling
This branch have following
- Auth module (JwtAuth Guard, Permission Guard)
- Files module (for uploading and downloading of files in AWS bucket using signed urls)
- Groups module
- Permissions module (with rbac)
- Roles module
- Shared module (includes email service, aws service, custom decorators, templates, transformers, etc.)
- Users module
- Users-group module
- Users-role module
- Seeders (users, roles, permissions)
- Passport jwt strategy
- Global exception handling
- PostgreSQL
- Node 20.10.0
- Nestjs 10.2.1
- postgres 16.1
- typeorm 0.3.17
APIs swagger docuementaion is available at baseUrl + /api-docuementation e.g. if you are using localhost at port 3000, then this app backend will work at url: "https://localhost:3000" you can find apis documentation at "https://localhost:3000/api-documentation"
For swagger documentation, @nestjs/swagger plugin is used in nest-cli with suitable options.
- npm i
- create db and update env accordingly
- run migrations using package.json script
- run seeders using package.json script
$ npm run start or $ npm run start:dev (watch mode)
- use package.json scripts to generate, create, run & revert migrations
For authentication JWT is used with passport strategy