koa-ts-controllers

This is a Typescript routing controller system for KoaJS 2+. Define your REST API endpoints using classes and decorators.


Keywords
koa, router, typescript, controller, rest, api, versioning, openapi 3, oas3, koa-router, koa2, openapi3, rest-api
License
MIT
Install
npm install koa-ts-controllers@3.2.2

Documentation

Amala

amala2

Amala is a decorator-based API framework for KoaJS v2+ and Typescript. Amala is fast, light, self-documenting and Docker-ready; Perfect for microservices.

  • Define your REST API endpoints using ES8 classes and decorators.
  • Inject arguments into your endpoint handlers, effectively turning your controller endpoints into standalone, testable service endpoints.
  • Clean, light and FAST endpoints. Powered by Koa.
  • No further magic past decorators. Full access to underlying Koa app.
  • Project creator comes with fully configured Docker and Docker-compose settings for quick containerization.
  • In-built OpenAPI spec exporter and Swagger UI!

This leads to clean, self-documenting API endpoints and makes it so you can re-use those service endpoints elsewhere. It also makes your endpoint endpoints easier to test.

Supporting Amala

Amala is an MIT-licensed open source project with its ongoing development made possible entirely by community support. If Amala is helping you build awesome APIs, please consider Becoming a Patron.

If you would like to contribute in other ways, Pull requests are also welcome!

Getting started

You may create an Amala project with any of the following:

  • npm init amala-app <project_name>
  • npm create amala-app <project_name>
  • yarn create amala-app <project_name>

For next steps, see official docs at https://amalajs.com.