/nestjs-extensions

NestJS extensions in use by Learning Rocks

Primary LanguageTypeScript

A collection of NestJS extensions used by Learning.rocks.

Name Description
Auth Authenticate and provide access to users and companies
Mongo Ensure mongodb index through decorators and manages mongodb connections
Pagination Paginate graphql queries
HealthCheck Create health checks with easy setup
Version Document versioning based on mongodb triggers
Keycloak Provides authorization through annotations
Bull Setup bull queues along with bull-board
GoogleAuth Validate google-auth tokens

Local Development

This project uses lerna package to handle sub repo dependencies.

  1. Use correct node version
  $ nvm use
  1. Install dependencies
  $ npm i

Test

$ npm run test

Running locally

You can link projects to test new features before publishing a new release. Follow these steps:

  1. In this project
npm run build
cd ./packages/{package}
npm pack
  1. In the other project
npm install path-to-generated-file/skore-io-{package}-{version}.tgz

Husky Install (required to commit)

We use husky to handle some hooks like pre-commit and commit-msg. To install it, you need to run npm run prepare or npx husky install.

If you don't run this command, your code will go up badly indented causing conflicts in the project's code base.