awesome koa

# Awesome Koa

> Useful resources for creating apps and working with Koa

- Links
- Examples & Boilerplates
- Middleware
- Others
- Videos

## Status

Info: Green Build Status means there should be no Deadlinks in this List.
You can find the Testfiles on travis-deadlink-scanner.

## Links

- Koa - Expressive middleware for node.js using generators
- co - The ultimate generator based flow-control goodness for nodejs

## Examples & Boilerplates

- koa-rest-api-boilerplate - Boilerplate for Node.js Koa RESTful API application with Docker, Swagger, Jest, Coveralls and CircleCI
- api-boilerplate - API application boilerplate
- kick-off-koa - An intro to koa via a set of self-guided workshops
- workshop - Koa Training Workshop
- examples - Example Koa apps
- babel-es6-es7-npm-skeleton - Babel ES6 / ES7 - Testing, Benchmark, Auto Reload, Linting
- K2 - Koa2, Babel ES6/7, GraphQL, passport-local based authentication, PostgreSQL, Jest for Unit and Integration testing and more
- koa-firebase - Koa with Firebase middleware integration starter
- koalerplate - A simple Koa 2 boilerplate for API’s using ES6.
- koa-hasura - Koa app starter kit with Hasura deployment
- koa2-api-boilerplate - Koa2, Knex, es6-error, Gulp, ApiDoc, ESLint, koa-validate, JWT.
- koa-user-api-boilerplate - User API boilerplate using Koa2, Full ES6 & 7 support, Passport & JWT with tests.
- koa-blog-api-boilerplate - Blog API extended from koa-user-api-boilerplate authentication layer with ES6 & 7 support.

## Tutorials

- Building a RESTful API with Koa and Postgres
- User Authentication with Passport and Koa

Info: Lots of the Examples and Boilerplattes are outdated.
Also some of the features not work straight out of the Box with the new Version.
I’m working on a Boilerplatte with all the cutting edge stuff and will publish it later on my GitHub Account.

## Middleware

- accesslog - Middleware for common log format access logs
- api-boilerplate - API application boilerplate
- atomic-session - Atomic sessions for Koa
- badgeboard
- basic-auth - blanket basic auth middleware
- body-parsers - collection of koa body parsers
- bodyparser - a body parser for koa
- bundle - Generic asset pipeline with caching, etags, minification, gzipping and sourcemaps.
- bunyan-logger - Koa middleware for bunyan request logging
- cash - HTTP response caching for Koa
- charset - use iconv-lite to encode the body and set charset to content-type
- cluster - Koa clustering and error handling utility
- compose - Middleware composition utility
- compress - Compress middleware for koa
- conditional-get - Conditional GET middleware for koa
- convert - Convert koa generator-based middleware to promise-based middleware
- cors - Cross-Origin Resource Sharing(CORS) for koa
- cross-cookies - Easily set cookies across subdomains
- csrf - CSRF tokens for koa
- ctx-basic-auth - Augments Koa with ctx.basicAuth
- ctx-cache-control - Augment Koa with ctx.cacheControl(maxAge)
- ctx-paginate - Augments Koa with ctx.paginate
- ejs - a koa view render middleware, support all feature of ejs
- error - Error response middleware (text, json, html)
- etag - ETag support for Koa responses
- examples - Example Koa apps
- favicon - Koa middleware for serving a favicon
- file-server - file serving middleware for koa
- generic-session - koa session store with memory, redis or others.
- html-minifier - minify HTML responses like some crazy guy
- is-json - check if a koa body should be interpreted as JSON
- joi-router - Configurable, input and output validated routing for koa
- json - pretty-printed JSON response middleware
- json-error - Error handler for pure-JSON apps
- json-filter - Middleware allowing the client to filter the response to only what they need, reducing the amount of traffic over the wire.
- jwt - Koa middleware for validating JSON Web Tokens
- kick-off-koa - An intro to koa via a set of self-guided workshops
- koa - Expressive middleware for node.js using generators
- koa-body-clean - Koa middleware for auto cleanup files created to disk by multipart middlewares
- koa-fresh - koa-fresh: HTTP response freshness testing middleware base on koa and node-fresh
- koa-github - simple github auth middleware for koa
- koa-lusca - koa version of lusca. Application security for koa.
- koa-markdown - Auto convert markdown to html for koa. Inspired by connect-markdown
- koa-range - range request implementation for koa, see http://tools.ietf.org/html/rfc7233
- koa-redis - koa session with redis
- koa-response-handler - lightweight response handler for koa
- koa-roles - koa version of Connect-Roles
- koa-rt - koa rt with microtime
- koa-custom-response - standard RESTful API for koa
- koa-typescript-guide the best practice of building Koa2 with TypeScript
- koa-twig - use twig as template engine
- koa-safe-jsonp - Safe jsonp plusins for koa.
- koa.io - Realtime web framework combine koa and socket.io.
- koa-ts-controllers - Typescript/decorator based Rest controller/router for Koa2+.
- koala - [SEEKING MAINTAINER] An HTTP/2 and ES6 Module-ready Koa Suite
- locales - koa locales, i18n solution for koa
- logger - Development style logging middleware
- maxrequests - Limit max requests on each http keepalive connection.
- middleware-hook - low-level hooks for your middleware
- mock - Simple web page mock middleware
- mount - Mount other Koa applications or middleware to a given pathname
- onerror - an error handler for koa, hack ctx.onerror
- override-method - method override utility for koa
- parameter - parameter validate middleware for koa, powered by parameter
- path-match - koa route middleware
- qs - qs for koa, and use querystring more safely.
- querystring-strict - THIS REPOSITORY IS NOW DEPRECATED
- ratelimit - Rate limiter middleware
- react-view - A Koa view engine which renders React components on server
- redis-session-sets - Koa Redis sessions with field-referencing cross sets
- resourcer - A simple resource directory mounter for koa.
- resourcer-docs - Simple app that generates documentation for routes mounted using koa-resourcer.
- response-time - X-Response-Time middleware
- rewrite - URL rewriting middleware
- route - Simple route middleware
- s3-cache - Koa middleware to cache and serve from S3
- send - Transfer static files
- sendfile - basic file-sending utility for koa
- session - Simple cookie-based session middleware
- snapshot - take snapshot when request, cache by request path.
- stateless-csrf - CSRF without sessions.
- static - Static file server middleware
- static-cache - Static cache for koa
- statsd - Statsd middleware
- timer - time your middleware
- todo - a todo example write with koa and react
- trace - generic tracing for koa
- trace-influxdb - InfluxDB tracing for koa-trace
- trie-router - Trie-routing for Koa
- userauth - koa user auth middleware
- workshop - Koa Training Workshop
- koa-protect - Security module for koa applications
- koache - Koa cache based on node-cache
- koa-json-rpc - JSON-RPC 2.0 middleware which implements the https://www.jsonrpc.org/specification

## Generators

- Generators - Mozilla Developer Network (MDN)

## Videos

- KnowThen - Videos about Koa and Generators
- Generators in JavaScript - What, Why and How

## Other Web Development Lists

- Atom for Web Developer - Useful Packages and Configuration for a better Workflow
- Node.js for Web Developers - Full Stack Javascript Development with Node.js
- Chrome Extensions for Web Developer - A list with useful Chrome Extensions
- Publishing NPM Packages for Developers - Introduction how to write and publish npm Modules.
- Awesome Typescript - A collection of awesome TypeScript resources.
- Docker Tutorial - Getting Started with Docker.
- Fish Shell Setup OS X - Terminal Setup for OS X with Fish Shell, Fisherman, Powerline Fonts and iTerm2.

### Contact / Social Media

Get the latest News about Web Development, Open Source, Tooling, Server & Security

### Development by

Developer / Author: Maik Ellerbrock
Company: Frapsoft

### License

This work by Maik Ellerbrock is licensed under a Creative Commons Attribution 4.0 International License.

koa.md Github