Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chalupajs/chalupa

:taco: :heart: Full belly, happy heart. | The most delicious microservices framework for Node.js.
https://github.com/chalupajs/chalupa

dependency-injection framework microservice microservices typescript

Last synced: 4 months ago
JSON representation

:taco: :heart: Full belly, happy heart. | The most delicious microservices framework for Node.js.

Awesome Lists containing this project

README

        


Chalupa


:taco: :heart: Barriga llena, corazón contento. | Full belly, happy heart.

Chalupa is a high-level framework for microservices, with the goal of making it easier to write better software faster. Software that is easy to write, test and maintain.

## Features

* **TypeScript from the ground up.** Chalupa is written in TypeScript and facilitates the use of TypeScript throughout.
* **Decorator-based.** Just write simple TypeScript classes, interfaces and methods, and then decorate them with the appropriate Chalupa decorators. No manual wiring needed, everything is taken care of by the framework.
* **IoC container inside.** By wrapping [Inversify](https://inversify.io/), Chalupa provides an IoC container for your service, making things like Dependency Injection as easy as ever.
* **External service calls made visible.** Make external service dependencies visible, typable and mockable using Chalupa's `@ExternalService()` decorator. Say goodbye to messy, impossible-to-test remote calls!
* **Code reuse and modularity.** Want to create reusable components across services? Want to split a service into smaller units? Code reuse and modularity is explicitly supported and facilitated by Chalupa via so-called modules.
* **Configuration support.** Building on [konvenient](https://github.com/dwmt/konvenient), Chalupa lets you create services which are easily and transparently configurable via environment variables and configuration files.

## Quickstart

**TODO:**

~~~~
npm init @chalupajs/app
~~~~

## Learn More

**TODO:**

If you want to write your own Chalupa services, then make sure to check out

* [the documentation aka The Chalupa Cookbook](docs/README.md),
* [the examples](packages/examples).