# Koa
Uses middleware pattern.
Each time we use app.use we add an other middleware function.
> ctx - The context contains all the information for a signle request and the response object aswell.
> next - Calls the next middleware.
The order is sequential.
The router methods order depends on where we add:
```js
app
.use(router.routes())
.use(router.allowedMethods());
```
If its after the "general" methods they run first and then get passed.
* [Koa](http://koajs.com/)
* [Koa router](https://github.com/alexmingoia/koa-router)
* [Koa body parser](https://github.com/koajs/bodyparser)