crud icon indicating copy to clipboard operation
crud copied to clipboard

NestJs CRUD for RESTful APIs

CRUD

for RESTful APIs built with NestJs

Built with :purple_heart: by @MichaelYali and Contributors
:star2: :eyes: :zap: :boom:

We believe that everyone who's working with NestJs and building some RESTful services and especially some CRUD functionality will find @rewiko/crud microframework very useful.

Features

CRUD usage
  • :electric_plug: Super easy to install and start using the full-featured controllers and services :point_right:

  • :octopus: DB and service agnostic extendable CRUD controllers

  • :mag_right: Reach query parsing with filtering, pagination, sorting, relations, nested relations, cache, etc.

  • :telescope: Framework agnostic package with query builder for a frontend usage

  • :space_invader: Query, path params and DTOs validation included

  • :clapper: Overriding controller methods with ease

  • :wrench: Tiny config (including globally)

  • :gift: Additional helper decorators

  • :pencil2: Swagger documentation

Packages

  • @rewiko/crud - core package which provides @Crud() decorator for endpoints generation, global configuration, validation, helper decorators (docs)
  • @rewiko/crud-request - request builder/parser package which provides RequestQueryBuilder class for a frontend usage and RequestQueryParser that is being used internally for handling and validating query/path params on a backend side (docs)
  • @rewiko/crud-typeorm - TypeORM package which provides base TypeOrmCrudService with methods for CRUD database operations (docs)

Documentation

Build library and run tests

yarn bootstrap
yarn clean
yarn build
docker compose up -d
yarn test:coverage

Make a release

  • Merge a PR on master.
  • Pull and checkout master
  • Update Changelog and commit
  • Run tests yarn clean && yarn build && docker compose up -d && yarn test:coverage
  • Run yarn pub - this will publish on the npm repo (need to be logged under rewiko yarn login)

Support

Any support is welcome. At least you can give us a star :star:

Contributors

Code Contributors

This project exists thanks to all the people who contributed. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

License

MIT