Microlemon

Microlemon CI

A collection of microservices with a common interface for Deno by Mandarine.


Description

Microlemon is a collection of implementation of microservices for Deno. Currently, Microlemon has support for:

Status

Microlemon offers a common interface to manage different communication layers. By having a common interface, the code tends to be straightforward and adaptable. While Microlemon is under construction, it is considered to be stable.


RabbitMQ

For information about how to use RabbitMQ with Microlemon, click here

Redis

For information about how to use Redis with Microlemon, click here

Nats

For information about how to use Nats with Microlemon, click here

TCP

For information about how to use TCP with Microlemon, click here


Adding Transporters to Internal Factory

Microlemon allows you to inject implementations of the Client interface to the internal factory. You can do this by using MicrolemonInternal.

import { MicrolemonInternal, Client, Microlemon } from "https://deno.land/x/microlemon@v2.0.0/mod.ts";

class MyTransporterImpl implements Client {
    ...
}

MicrolemonInternal.getInstance().registerTransporter("MY_TRANSPORTER_KEY", MyTransporterImpl);

const microlemon = new Microlemon();
const connection = await microlemon.connect({
    transport: "MY_TRANSPORTER_KEY",
    options: {
        host: "127.0.0.1",
        port: 9777
    }
});

Questions

For questions & community support, please visit our Discord Channel or join us on our twitter.

Want to help?

Interested in coding

In order to submit improvements to the code, open a PR and wait for it to review. We appreciate you doing this.

Not interested in coding

We would love to have you in our community, please submit an issue to provide information about a bug, feature, or improvement you would like.

Follow us wherever we are going