Skip to content

Simon323/nestjs-graphql

Repository files navigation

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

Description

Nest framework TypeScript starter repository.

Create new project

$ nest new my-app

Monorepo / Microservices / Library

# Create new app in monorepo context
$ nest generate app your_app_name

# Create shared library
$ nest g library name_your_library

NestJS cli

# generate controller
$ nest g controller users

# generate module
$ nest g module users

# generate service without tests
$ nest g service users --no-spec

# generate service
$ nest g service users

Running the app

# development
$ yarn start

# watch mode
$ yarn start:dev

# production mode
$ yarn start:prod

# run another app from monorepo
$ yarn start:dev name_app_from_apps_directory

Test

# unit tests
$ yarn test

# e2e tests
$ yarn test:e2e

# test coverage
$ yarn test:cov

Run in docker

# first time
$ docker-compose up --build -V

# after
$ docker-compose up

Docker Hot Reload

# Issue with hot reload in docker
$ "start:dev": "WATCHPACK_POLLING=true nest start --watch",
$ https://stackoverflow.com/a/72478714

RabbitMQ

# RabbitMQ GUI
$ http://localhost:15672
$ username: guest
$ password guest

Auth

# npm packages
- passport
- @nestjs/passport
- passport-local
- @types/passport-local
- bcrypt
- @types/bcrypt
- @nestjs/jwt
- passport-jwt
- @types/passport-jwt

# install
$ yarn add passport @nestjs/passport passport-local @types/passport-local bcrypt @types/bcrypt @nestjs/jwt passport-jwt @types/passport-jwt

GraphQL

# npm packages
- @nestjs/graphql
- graphql-tools
- apollo-server-express
- graphql
- @nestjs/apollo

# install
$ yarn add @nestjs/graphql graphql-tools apollo-server-express graphql @nestjs/apollo

.env

# use configuration service instead process.env
- @nestjs/config
- joi

# install
$ yarn add @nestjs/config joi

Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

Stay in touch

License

Nest is MIT licensed.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published