0.1.7 • Published 3 years ago

chaindler v0.1.7

Weekly downloads
3
License
MIT
Repository
github
Last release
3 years ago

chaindler NPM Build Coverage License

A simple request handler (controller/middleware) chainer.

Installation

$ npm i chaindler

Usage

1. Import chaindler

const { Chain } = require('chaindler');

2. Write your middlewares

function mw1 (req, res, next) {
  console.log('1');
  next();
}

function mw2 (req, res, next) {
  console.log('2');
  next();
}

function mw3 (req, res, next) {
  console.log('3');
  next();
}

3. Write your controller

function controller (req, res, next) {
  res.send('hello');
}

4. Chain them up!

import express = require('express');
const app = express();
app.use('/hello', new Chain(mw1, mw2, mw3).handle(controller));

NOTE: Example was with the assumption you are using express.js

This module was developed with Node.js servers that uses swagger-node, express-openapi, and other kinds of modules that limits your ability to chain middlewares in mind.

These kinds of modules would require you to have your controllers in an object, and to use chaindler in that scenario would be something like this:

const controllers = {
  operation1: new Chain(mw1, mw2, mw3).handle(controller),
  operation2: new Chain(mw1, mw2, mw3).handle(controller),
}

Authors

  • Zishran Garces

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details.

0.1.7

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago