@koakh/nestjs-package-jwt-authentication-graphql v1.0.2
README
@nestjsplus/dyn-schematics
This dynamic module was generated with Nest Dynamic Package Generator Schematics. You can read more about using the generator here.
Installation
To install this generated project:
$ npm install
(or yarn equivalent)
Running
If you selected yes
for the question Generate a testing client?
, a small testing module was automatically generated
called NestGraphqlAuthClientModule. You can test that the template was properly generated by running
$ npm run start:dev
Then connect to http://localhost:3000.
Customizing
The files in the project have comments that should help guide you.
You can also refer to this article for details on the concepts behind this module pattern.
You can read more about using the generator here.
About @nestjsplus/dyn-schematics
Nest Dynamic Package Generator Schematics generates a starter template for building NestJS dynamic packages. It uses the @nestjs/cli
core package, and provides customized schematics for generating modular NestJS applications. See here for the full set of available schematics, and documentation.
How to use Package
Create a NestJs GraphQL Project
tip can start from 12-graphql-schema-first, or 23-graphql-code-first
Add Package to project
$ npm i @koakh/nestjs-package-jwt-authentication-graphql
Required UserService
this library purpose is to have a standalone package with graphql jwt authentication, where we can inject a UserService
that implements the UserServiceAbstract
contract, this way we can use diferent UserService implementations like inMemory users, used to test or quick start, and other kind data base/orm implemenattions like TypeOrm, Moogoose, Neo4J, Postgres etc
src/abstracts/users-service.abstract.ts
export abstract class UserServiceAbstract {
abstract findOneByField(field: string, value: string, currentUser?: CurrentUserPayload) : Promise<AuthUser | undefined>;
}