guide users - wwwsolutions/nestjs-starter-kit GitHub Wiki
Example from Prisma-GraphQL integration
Each library has a single responsibility
-
libs/api/domain/users
DOMAIN-
data-access
DATA LAYER -
feature
API LAYER
-
This is base domain library which holds, in this case, some resolvers.
Contains domain's data layer and exposes:
- ApiGraphqlUsersDataAccessModule
- UsersService
- models
// generate feature lib
nx generate @nrwl/nest:library --name=feature --directory=api/domain/users --buildable --standaloneConfig --strict --tags=type:feature,scope:api --no-interactive
// generate data-access lib
nx generate @nrwl/nest:library --name=data-access --directory=api/domain/users --buildable --standaloneConfig --strict --tags=type:data-access,scope:api --no-interactive
Add feature module name to the domains array.
// libs/api/core/src/lib/registrations/domains.registration.ts
import { ApiDomainUsersFeatureModule } from '@wwwsolutions/api/domain/users/feature';
export const domains: NestImportsType = [ApiDomainUsersFeatureModule];