mwa

Easily create your own middleware layer.

  • mwa

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
mwa
4110.2.02 years ago3 years agoMinified + gzip package size for mwa in KB

Readme

mwa
!Build Statustravis-imgtravis-url !Coverage Statuscodecov-imgcodecov-url !Licenselicense-imglicense-url !NPM Downloadsdownloads-imgdownloads-url !NPM Versionversion-imgversion-url !Dependency Statusdependency-imgdependency-url !devDependency Statusdevdependency-imgdevdependency-url !Code Stylestyle-imgstyle-url
😘 Middle Ware Async, easily create your own middleware layer. It's like koa's middleware.

Installation

$ npm install mwa

# or yarn
$ yarn add mwa

Usage

const app = mwa()

app.use(async (state, next) => {
  console.log('mw1 start: ', state)
  state.a = 1
  await next()
  console.log('mw1 end: ', state)
})

app.use(async (state, next) => {
  console.log('mw2 start: ', state)
  state.b = 1
  await next()
  console.log('mw2 end: ', state)
})

;(async () => {
  const initialState = {}
  await app.run(initialState)
  console.log('all completed')
})()

API

mwa()

Return a new Mwa instance.

Instance

.use(middleware)

Use the given middleware. Return the instance itself.
middleware
  • Type: async function or async function[]
  • Details: middleware function.

.run(state)

Run all middlewares. Return a Promise.
state
  • Type: any
  • Details: middleware context.

Contributing

  1. Fork it on GitHub!
  2. Clone the fork to your own machine.
  3. Checkout your feature branch: git checkout -b my-awesome-feature
  4. Commit your changes to your own branch: git commit -am 'Add some feature'
  5. Push your work back up to your fork: git push -u origin my-awesome-feature
  6. Submit a Pull Request so that we can review your changes.

NOTE: Be sure to merge the latest from "upstream" before making a pull request!

License

MIT © zce