Skip to content

NestJS REST API Starter with Postgres, Passport Local and Social Auth

Notifications You must be signed in to change notification settings

mattlehrer/nest-starter-pg-auth

Repository files navigation

NestJS REST API Starter with Postgres, Passport Local and Social Auth

codecov

How to use

Run postgres locally with docker:

docker run --name postgres -e POSTGRES_PASSWORD=postgres -d postgres

(change the name of the container and the password if you want)

Run pgadmin to help with postgres admin and viewing data. Download or run with docker.

fork or clone this repo

git clone --depth 1 https://github.com/mattlehrer/nest-starter-pg-auth.git nest-starter

cd nest-starter

npm i

npm run start:dev

What's working / Roadmap

  • Postgres with TypeORM
  • Husky and Lint-staged
  • ESLint (instead of NestJS CLI generator's TSLint even though the official NestJS TS starter has switched to ESLint )
  • Expose only intentional fields with class-validator and ClassSerializerInterceptor on each route
  • Testing with Jest
  • User roles
  • Logging with Pino setup with nestjs-pino in its own global module in case you want to use something else
  • Passport Local (modified to allow email in username field)
  • Passport JWT
  • Passport Google
  • Passport Facebook
  • Passport Twitter
  • Passport Github
  • Transactional Email with Sendgrid
  • Helmet
  • CORS
  • Events
  • Analytics