ashrafkm / MyAPI

A template to create awesome APIs easily ⚡️

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Nest Logo

MyApi Template
⚡️ Launch your api instantly watching changes with live-reload
📈 Highly scalable using Repository design pattern to access the database even easier
😎 OpenAPI with Swagger to describe your RESTful APIs
KISS principle make everything as simple as possible, but not simpler
📱 Mobile friendly supporting Cross-origin resource sharing (CORS) with a list of domains for restricted resources
🔑 Security using JWT authentication strategy with Passport and other techniques to increase the security of your applications
👥 Made for Users. Easily validate permissions for specific routes using Guards with a Role-based access control
Don't repeat yourself, Single responsibility principle.
🔗 Validation: provides pipes available right out-of-the-box with class-validator to enforce validation rules for all incoming client payloads
⚠️ Logger with Winston using different levels to track exceptions easily
🔄 Migrations using TypeORM to apply incremental updates to the database

Installation 📚

# install dependencies
$ yarn

Running the app ▶

# development
$ yarn start

# watch mode
$ yarn start:dev

# production mode
$ yarn start:prod

Running migrations ▶

# run migration
$ yarn migration

# create migration
$ yarn migration:create

# revert migration
$ yarn migration:revert

Test 🕵️

# unit tests
$ yarn test

# e2e tests
$ yarn test:e2e

# test coverage
$ yarn test:cov

Credits 👍

Supporting 🍻

I believe in Unicorns 🦄 Support me, if you do too.

Happy coding 💯

Made with ❤️

About

A template to create awesome APIs easily ⚡️

License:MIT License


Languages

Language:TypeScript 98.9%Language:JavaScript 0.8%Language:HTML 0.3%