mollitia
TypeScript icon, indicating that this package has built-in type declarations

0.1.0 • Public • Published

Mollitia

Quality Gate Status Coverage Version Downloads License


Mollitia Icon

Mollitia is a JavaScript Resilience library that works on Node and on browsers. The purpose of such kind of tool is to help organize asynchronous operations under a highly customizable circuit that helps managing error use cases. When everything is falling apart, it stops the classic flow and uses modules to manage failures.

Documentation

Full documentation website can be found here.

Installation

With Node or any web UI Framework

# Install the dependency
npm install mollitia --save
// Javascript
const { Circuit } = require('mollitia');
// ES6 or TypeScript
import { Circuit } from 'mollitia';

With CDN

<!-- CDN -->
<script type="text/javascript" src="https://unpkg.com/mollitia"></script>
<script>
  const { Circuit } = window.Mollitia;
</script>

Usage

// Imports the library
const { Circuit } = require('mollitia');
// Creates a circuit
const myCircuit = new Circuit();
// fn(yourFunction) - execute(yourParams...)
await circuit.fn(yourFunction).execute('dummy');

Features

The point of Mollitia is to get every Resilience patterns into one library. It is very similar at what does Resilience4j on Java, but on Node.

  • Works on Node and on browser (even Internet Explorer 11, wow).
  • Implements a wide variety of Resilience patterns.
  • Has Method Agnostic circuits, meaning you don't have to create one circuit per function.
  • Supports addons.

Comparison with other libraries

  • cockatiel
    • Misses the Cache and Ratelimit modules.
    • Cannot create module or addons.
  • opossum
    • Only support the Circuit Breaker module
    • Cannot have Method Agnostic circuits.
    • Cannot create module or addons.
  • brakes
    • Only support the Circuit Breaker module
    • Cannot have Method Agnostic circuits.
    • Cannot create module or addons.

License

Package Sidebar

Install

npm i mollitia

Weekly Downloads

1,497

Version

0.1.0

License

MIT

Unpacked Size

562 kB

Total Files

56

Last publish

Collaborators

  • cadgerfeast
  • tichon29