A progressive Node.js framework for building efficient and scalable server-side applications, heavily inspired by Angular.
Nest framework TypeScript starter repository.
$ npm install
# development
$ npm run start
# watch mode
$ npm run start:dev
# production mode
$ npm run start:prod
# unit tests
$ npm run test
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:cov
Deployment is done using AWS CDK. You can find deployment configuration in ./deploy
folder.
To run deployment, you need to have AWS credentials set up on your machine.
Run deployment if you have AWS credentials in your environment variables:
$ npm run build
$ npm run deploy
If you set up AWS Profile in your ~/.aws/credentials
file, you can run deployment with the following command:
$ npm run build
$ npm run deploy -- --profile <profile-name>
When deployment is done, you can find the url of deployed API in the output of the command.
Outputs:
nodejs-aws-cart-api.Url = <url>
When you run npm run deploy
, cdk bundles all your code into a single js file using esbuild
, uploads it to S3, generates CloudFormation template representing the change and deploying it to the AWS account.
Due to how NestJS is written, some modules are marked as "external" and are not included in the final bundle:
- @nestjs/microservices
- @nestjs/websockets
- class-transformer
- class-validator
If you want to use any of this modules, you need to add them to package.json, install and remove from deploy/Stack.ts
.
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.
- Author - Kamil Myśliwiec
- Website - https://nestjs.com
- Twitter - @nestframework
Nest is MIT licensed.