Skip to content

The modern Raw Node.js/Connect/Express-Style middleware composition.

License

Notifications You must be signed in to change notification settings

macchiatojs/middleware

Repository files navigation

@macchiatojs/middleware

The modern Express-Style middleware composition.

Installation

# npm
$ npm install @macchiatojs/middleware
# yarn
$ yarn add @macchiatojs/middleware

Usage

import Middleware from "@macchiatojs/middleware";

const middleware = new Middleware();

middleware.push((req, res, next) => {
  req.arr.push(1);
  return next().then(() => {
    req.arr.push(6);
  });
});

middleware.push(async (req, res, next) => {
  req.arr.push(2);
  await next();
  req.arr.push(5);
});

middleware.push((req, res, next) => {
  req.arr.push(3);
  next();
  req.arr.push(4);
});

const req = { arr: [] };
const res = {};
await middleware.compose(req, res);
console.log(req.arr.toString() === "1,2,3,4,5,6");
// true

Support

If you have any problem or suggestion please open an issue.

License


MIT © Imed Jaberi

About

The modern Raw Node.js/Connect/Express-Style middleware composition.

Resources

License

Stars

Watchers

Forks

Packages

No packages published