Files
awesome-awesomeness/html/koa.html
2025-07-18 23:13:11 +02:00

379 lines
18 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<figure>
<img src="https://github.frapsoft.com/top/awesome-koa.jpg"
alt="awesome koa" />
<figcaption aria-hidden="true">awesome koa</figcaption>
</figure>
<h1
id="awesome-koa-awesome-javascript-open-source-love-gitter-chat">Awesome
Koa <a href="https://github.com/sindresorhus/awesome"><img
src="https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg"
alt="Awesome" /></a> <a
href="https://github.com/ellerbrock/javascript-badges/"><img
src="https://badges.frapsoft.com/javascript/code/javascript.svg?v=100"
alt="Javascript" /></a> <a
href="https://github.com/ellerbrock/open-source-badges/"><img
src="https://badges.frapsoft.com/os/v1/open-source.svg?v=102"
alt="Open Source Love" /></a> <a
href="https://gitter.im/frapsoft/frapsoft/"><img
src="https://badges.gitter.im/frapsoft/frapsoft.svg"
alt="Gitter Chat" /></a></h1>
<blockquote>
<p>Useful resources for creating apps and working with <a
href="http://koajs.com">Koa</a></p>
</blockquote>
<ul>
<li><a href="#links">Links</a></li>
<li><a href="#examples--boilerplates">Examples &amp;
Boilerplates</a></li>
<li><a href="#middleware">Middleware</a></li>
<li><a href="#others">Others</a></li>
<li><a href="#videos">Videos</a></li>
</ul>
<h2 id="status">Status</h2>
<p><a href="https://travis-ci.org/ellerbrock/awesome-koa"><img
src="https://travis-ci.org/ellerbrock/awesome-koa.svg?branch=master"
alt="Deadlink Test" /></a></p>
<p><strong>Info:</strong> Green Build Status means there should be no
Deadlinks in this List.<br> You can find the Testfiles on <a
href="https://github.com/ellerbrock/travis-deadlink-scanner">travis-deadlink-scanner</a>.</p>
<h2 id="links">Links</h2>
<ul>
<li><a href="https://github.com/koajs/koa">Koa</a> - Expressive
middleware for node.js using generators</li>
<li><a href="https://github.com/tj/co">co</a> - The ultimate generator
based flow-control goodness for nodejs</li>
</ul>
<h2 id="examples-boilerplates">Examples &amp; Boilerplates</h2>
<ul>
<li><a
href="https://github.com/posquit0/koa-rest-api-boilerplate">koa-rest-api-boilerplate</a>
- Boilerplate for Node.js Koa RESTful API application with Docker,
Swagger, Jest, Coveralls and CircleCI</li>
<li><a
href="https://github.com/koajs/api-boilerplate">api-boilerplate</a> -
API application boilerplate</li>
<li><a href="https://github.com/koajs/kick-off-koa">kick-off-koa</a> -
An intro to koa via a set of self-guided workshops</li>
<li><a href="https://github.com/koajs/workshop">workshop</a> - Koa
Training Workshop</li>
<li><a href="https://github.com/koajs/examples">examples</a> - Example
Koa apps</li>
<li><a
href="https://github.com/ellerbrock/babel-es6-es7-npm-skeleton">babel-es6-es7-npm-skeleton</a>
- Babel ES6 / ES7 - Testing, Benchmark, Auto Reload, Linting</li>
<li><a href="https://github.com/hongymagic/k2">K2</a> - Koa2, Babel
ES6/7, GraphQL, passport-local based authentication, PostgreSQL, Jest
for Unit and Integration testing and more</li>
<li><a
href="https://github.com/antonybudianto/koa-firebase">koa-firebase</a> -
Koa with Firebase middleware integration starter</li>
<li><a href="https://github.com/dbalas/koalerplate">koalerplate</a> - A
simple Koa 2 boilerplate for APIs using ES6.</li>
<li><a
href="https://hasura.io/hub/project/hasura/hello-nodejs-koa">koa-hasura</a>
- Koa app starter kit with Hasura deployment</li>
<li><a
href="https://github.com/valera-shulghin/koa2-api-boilerplate">koa2-api-boilerplate</a>
- Koa2, Knex, es6-error, Gulp, ApiDoc, ESLint, koa-validate, JWT.</li>
<li><a
href="https://github.com/maotora/koa-userapi">koa-user-api-boilerplate</a>
- User API boilerplate using Koa2, Full ES6 &amp; 7 support, Passport
&amp; JWT with tests.</li>
<li><a
href="https://github.com/maotora/koa-blogapi">koa-blog-api-boilerplate</a>
- Blog API extended from <a
href="https://github.com/maotora/koa-userapi">koa-user-api-boilerplate</a>
authentication layer with ES6 &amp; 7 support.</li>
</ul>
<h2 id="tutorials">Tutorials</h2>
<ul>
<li><a
href="http://mherman.org/blog/2017/08/23/building-a-restful-api-with-koa-and-postgres">Building
a RESTful API with Koa and Postgres</a></li>
<li><a
href="http://mherman.org/blog/2018/01/02/user-authentication-with-passport-and-koa">User
Authentication with Passport and Koa</a></li>
</ul>
<p><strong>Info:</strong> Lots of the Examples and Boilerplattes are
outdated.<br> Also some of the features not work straight out of the Box
with the new Version.<br> Im working on a Boilerplatte with all the
cutting edge stuff and will publish it later on my <a
href="https://github.com/ellerbrock">GitHub Account</a>.</p>
<h2 id="middleware">Middleware</h2>
<ul>
<li><a href="https://github.com/koajs/accesslog">accesslog</a> -
Middleware for common log format access logs</li>
<li><a
href="https://github.com/koajs/api-boilerplate">api-boilerplate</a> -
API application boilerplate</li>
<li><a href="https://github.com/koajs/atomic-session">atomic-session</a>
- Atomic sessions for Koa</li>
<li><a href="https://github.com/koajs/badgeboard">badgeboard</a></li>
<li><a href="https://github.com/koajs/basic-auth">basic-auth</a> -
blanket basic auth middleware</li>
<li><a href="https://github.com/koajs/body-parsers">body-parsers</a> -
collection of koa body parsers</li>
<li><a href="https://github.com/koajs/bodyparser">bodyparser</a> - a
body parser for koa</li>
<li><a href="https://github.com/koajs/bundle">bundle</a> - Generic asset
pipeline with caching, etags, minification, gzipping and
sourcemaps.</li>
<li><a href="https://github.com/koajs/bunyan-logger">bunyan-logger</a> -
Koa middleware for bunyan request logging</li>
<li><a href="https://github.com/koajs/cash">cash</a> - HTTP response
caching for Koa</li>
<li><a href="https://github.com/koajs/charset">charset</a> - use
iconv-lite to encode the body and set charset to content-type</li>
<li><a href="https://github.com/koajs/cluster">cluster</a> - Koa
clustering and error handling utility</li>
<li><a href="https://github.com/koajs/compose">compose</a> - Middleware
composition utility</li>
<li><a href="https://github.com/koajs/compress">compress</a> - Compress
middleware for koa</li>
<li><a
href="https://github.com/koajs/conditional-get">conditional-get</a> -
Conditional GET middleware for koa</li>
<li><a href="https://github.com/koajs/convert">convert</a> - Convert koa
generator-based middleware to promise-based middleware</li>
<li><a href="https://github.com/koajs/cors">cors</a> - Cross-Origin
Resource Sharing(CORS) for koa</li>
<li><a href="https://github.com/koajs/cross-cookies">cross-cookies</a> -
Easily set cookies across subdomains</li>
<li><a href="https://github.com/koajs/csrf">csrf</a> - CSRF tokens for
koa</li>
<li><a href="https://github.com/koajs/ctx-basic-auth">ctx-basic-auth</a>
- Augments Koa with ctx.basicAuth</li>
<li><a
href="https://github.com/koajs/ctx-cache-control">ctx-cache-control</a>
- Augment Koa with ctx.cacheControl(maxAge)</li>
<li><a href="https://github.com/koajs/ctx-paginate">ctx-paginate</a> -
Augments Koa with ctx.paginate</li>
<li><a href="https://github.com/koajs/ejs">ejs</a> - a koa view render
middleware, support all feature of ejs</li>
<li><a href="https://github.com/koajs/error">error</a> - Error response
middleware (text, json, html)</li>
<li><a href="https://github.com/koajs/etag">etag</a> - ETag support for
Koa responses</li>
<li><a href="https://github.com/koajs/examples">examples</a> - Example
Koa apps</li>
<li><a href="https://github.com/koajs/favicon">favicon</a> - Koa
middleware for serving a favicon</li>
<li><a href="https://github.com/koajs/file-server">file-server</a> -
file serving middleware for koa</li>
<li><a
href="https://github.com/koajs/generic-session">generic-session</a> -
koa session store with memory, redis or others.</li>
<li><a href="https://github.com/koajs/html-minifier">html-minifier</a> -
minify HTML responses like some crazy guy</li>
<li><a href="https://github.com/koajs/is-json">is-json</a> - check if a
koa body should be interpreted as JSON</li>
<li><a href="https://github.com/koajs/joi-router">joi-router</a> -
Configurable, input and output validated routing for koa</li>
<li><a href="https://github.com/koajs/json">json</a> - pretty-printed
JSON response middleware</li>
<li><a href="https://github.com/koajs/json-error">json-error</a> - Error
handler for pure-JSON apps</li>
<li><a href="https://github.com/koajs/json-filter">json-filter</a> -
Middleware allowing the client to filter the response to only what they
need, reducing the amount of traffic over the wire.</li>
<li><a href="https://github.com/koajs/jwt">jwt</a> - Koa middleware for
validating JSON Web Tokens</li>
<li><a href="https://github.com/koajs/kick-off-koa">kick-off-koa</a> -
An intro to koa via a set of self-guided workshops</li>
<li><a href="https://github.com/koajs/koa">koa</a> - Expressive
middleware for node.js using generators</li>
<li><a
href="https://github.com/rferro/koa-body-clean">koa-body-clean</a> - Koa
middleware for auto cleanup files created to disk by multipart
middlewares</li>
<li><a href="https://github.com/koajs/koa-fresh">koa-fresh</a> -
koa-fresh: HTTP response freshness testing middleware base on koa and
node-fresh</li>
<li><a href="https://github.com/koajs/koa-github">koa-github</a> -
simple github auth middleware for koa</li>
<li><a href="https://github.com/koajs/koa-lusca">koa-lusca</a> - koa
version of lusca. Application security for koa.</li>
<li><a href="https://github.com/koajs/koa-markdown">koa-markdown</a> -
Auto convert markdown to html for koa. Inspired by connect-markdown</li>
<li><a href="https://github.com/koajs/koa-range">koa-range</a> - range
request implementation for koa, see <a
href="http://tools.ietf.org/html/rfc7233"
class="uri">http://tools.ietf.org/html/rfc7233</a></li>
<li><a href="https://github.com/koajs/koa-redis">koa-redis</a> - koa
session with redis</li>
<li><a
href="https://github.com/potatogopher/koa-response-handler">koa-response-handler</a>
- lightweight response handler for koa</li>
<li><a href="https://github.com/koajs/koa-roles">koa-roles</a> - koa
version of Connect-Roles</li>
<li><a href="https://github.com/koajs/koa-rt">koa-rt</a> - koa rt with
microtime</li>
<li><a
href="https://github.com/DhyanaChina/koa-custom-response">koa-custom-response</a>
- standard RESTful API for koa</li>
<li><a
href="https://github.com/WittBulter/koa2-typescript-guide">koa-typescript-guide</a>
the best practice of building Koa2 with TypeScript</li>
<li><a href="https://github.com/jean-smaug/koa-twig">koa-twig</a> - use
twig as template engine</li>
<li><a href="https://github.com/koajs/koa-safe-jsonp">koa-safe-jsonp</a>
- Safe jsonp plusins for koa.</li>
<li><a href="https://github.com/koajs/koa.io">koa.io</a> - Realtime web
framework combine koa and socket.io.</li>
<li><a
href="https://github.com/iyobo/koa-ts-controllers">koa-ts-controllers</a>
- Typescript/decorator based Rest controller/router for Koa2+.</li>
<li><a href="https://github.com/koajs/koala">koala</a> - [SEEKING
MAINTAINER] An HTTP/2 and ES6 Module-ready Koa Suite</li>
<li><a href="https://github.com/koajs/locales">locales</a> - koa
locales, i18n solution for koa</li>
<li><a href="https://github.com/koajs/logger">logger</a> - Development
style logging middleware</li>
<li><a href="https://github.com/koajs/maxrequests">maxrequests</a> -
Limit max requests on each http keepalive connection.</li>
<li><a
href="https://github.com/koajs/middleware-hook">middleware-hook</a> -
low-level hooks for your middleware</li>
<li><a href="https://github.com/koajs/mock">mock</a> - Simple web page
mock middleware</li>
<li><a href="https://github.com/koajs/mount">mount</a> - Mount other Koa
applications or middleware to a given pathname</li>
<li><a href="https://github.com/koajs/onerror">onerror</a> - an error
handler for koa, hack ctx.onerror</li>
<li><a
href="https://github.com/koajs/override-method">override-method</a> -
method override utility for koa</li>
<li><a href="https://github.com/koajs/parameter">parameter</a> -
parameter validate middleware for koa, powered by parameter</li>
<li><a href="https://github.com/koajs/path-match">path-match</a> - koa
route middleware</li>
<li><a href="https://github.com/koajs/qs">qs</a> - qs for koa, and use
querystring more safely.</li>
<li><a
href="https://github.com/koajs/querystring-strict">querystring-strict</a>
- THIS REPOSITORY IS NOW DEPRECATED</li>
<li><a href="https://github.com/koajs/ratelimit">ratelimit</a> - Rate
limiter middleware</li>
<li><a href="https://github.com/koajs/react-view">react-view</a> - A Koa
view engine which renders React components on server</li>
<li><a
href="https://github.com/koajs/redis-session-sets">redis-session-sets</a>
- Koa Redis sessions with field-referencing cross sets</li>
<li><a href="https://github.com/koajs/resourcer">resourcer</a> - A
simple resource directory mounter for koa.</li>
<li><a href="https://github.com/koajs/resourcer-docs">resourcer-docs</a>
- Simple app that generates documentation for routes mounted using
koa-resourcer.</li>
<li><a href="https://github.com/koajs/response-time">response-time</a> -
X-Response-Time middleware</li>
<li><a href="https://github.com/koajs/rewrite">rewrite</a> - URL
rewriting middleware</li>
<li><a href="https://github.com/koajs/route">route</a> - Simple route
middleware</li>
<li><a href="https://github.com/koajs/s3-cache">s3-cache</a> - Koa
middleware to cache and serve from S3</li>
<li><a href="https://github.com/koajs/send">send</a> - Transfer static
files</li>
<li><a href="https://github.com/koajs/sendfile">sendfile</a> - basic
file-sending utility for koa</li>
<li><a href="https://github.com/koajs/session">session</a> - Simple
cookie-based session middleware</li>
<li><a href="https://github.com/koajs/snapshot">snapshot</a> - take
snapshot when request, cache by request path.</li>
<li><a href="https://github.com/koajs/stateless-csrf">stateless-csrf</a>
- CSRF without sessions.</li>
<li><a href="https://github.com/koajs/static">static</a> - Static file
server middleware</li>
<li><a href="https://github.com/koajs/static-cache">static-cache</a> -
Static cache for koa</li>
<li><a href="https://github.com/koajs/statsd">statsd</a> - Statsd
middleware</li>
<li><a href="https://github.com/koajs/timer">timer</a> - time your
middleware</li>
<li><a href="https://github.com/koajs/todo">todo</a> - a todo example
write with koa and react</li>
<li><a href="https://github.com/koajs/trace">trace</a> - generic tracing
for koa</li>
<li><a href="https://github.com/koajs/trace-influxdb">trace-influxdb</a>
- InfluxDB tracing for koa-trace</li>
<li><a href="https://github.com/koajs/trie-router">trie-router</a> -
Trie-routing for Koa</li>
<li><a href="https://github.com/koajs/userauth">userauth</a> - koa user
auth middleware</li>
<li><a href="https://github.com/koajs/workshop">workshop</a> - Koa
Training Workshop</li>
<li><a href="https://github.com/may215/koa-protect">koa-protect</a> -
Security module for koa applications</li>
<li><a href="https://github.com/jean-smaug/koache">koache</a> - Koa
cache based on node-cache</li>
<li><a href="https://github.com/koalex/koa-json-rpc">koa-json-rpc</a> -
JSON-RPC 2.0 middleware which implements the <a
href="https://www.jsonrpc.org/specification">https://www.jsonrpc.org/specification</a></li>
</ul>
<h2 id="generators">Generators</h2>
<ul>
<li><a
href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Generator">Generators</a>
- Mozilla Developer Network (MDN)</li>
</ul>
<h2 id="videos">Videos</h2>
<ul>
<li><a href="http://knowthen.com/category/node-js/">KnowThen</a> -
Videos about Koa and Generators</li>
<li><a href="https://youtu.be/ategZqxHkz4">Generators in JavaScript</a>
- What, Why and How</li>
</ul>
<h2 id="other-web-development-lists">Other Web Development Lists</h2>
<ul>
<li><a href="https://github.com/ellerbrock/atom-for-webdeveloper">Atom
for Web Developer</a> - Useful Packages and Configuration for a better
Workflow</li>
<li><a
href="https://github.com/ellerbrock/nodejs-for-webdeveloper">Node.js for
Web Developers</a> - Full Stack Javascript Development with Node.js</li>
<li><a
href="https://github.com/ellerbrock/chrome-extensions-for-webdeveloper">Chrome
Extensions for Web Developer</a> - A list with useful Chrome
Extensions</li>
<li><a
href="https://github.com/ellerbrock/publishing-npm-packages">Publishing
NPM Packages for Developers</a> - Introduction how to write and publish
npm Modules.</li>
<li><a href="https://github.com/ellerbrock/awesome-typescript">Awesome
Typescript</a> - A collection of awesome TypeScript resources.</li>
<li><a href="https://github.com/ellerbrock/docker-tutorial">Docker
Tutorial</a> - Getting Started with Docker.</li>
<li><a href="https://github.com/ellerbrock/fish-shell-setup-osx">Fish
Shell Setup OS X</a> - Terminal Setup for OS X with Fish Shell,
Fisherman, Powerline Fonts and iTerm2.</li>
</ul>
<h3 id="contact-social-media">Contact / Social Media</h3>
<p><em>Get the latest News about Web Development, Open Source, Tooling,
Server &amp; Security</em></p>
<p><a href="https://twitter.com/frapsoft/"><img
src="https://github.frapsoft.com/social/twitter.png"
alt="Twitter" /></a><a href="https://www.facebook.com/frapsoft/"><img
src="https://github.frapsoft.com/social/facebook.png"
alt="Facebook" /></a><a
href="https://plus.google.com/116540931335841862774"><img
src="https://github.frapsoft.com/social/google-plus.png"
alt="Google+" /></a><a href="https://gitter.im/frapsoft/frapsoft/"><img
src="https://github.frapsoft.com/social/gitter.png"
alt="Gitter" /></a><a href="https://github.com/ellerbrock/"><img
src="https://github.frapsoft.com/social/github.png"
alt="Github" /></a></p>
<h3 id="development-by">Development by</h3>
<p>Developer / Author: <a href="https://github.com/ellerbrock/">Maik
Ellerbrock</a><br> Company: <a
href="https://github.com/frapsoft/">Frapsoft</a></p>
<h3 id="license">License</h3>
<p><a href="http://creativecommons.org/licenses/by/4.0/"><img
src="https://i.creativecommons.org/l/by/4.0/88x31.png"
alt="Creative Commons License" /></a><br></p>
<p>This work by <a href="https://github.com/ellerbrock/">Maik
Ellerbrock</a> is licensed under a <a
href="http://creativecommons.org/licenses/by/4.0/">Creative Commons
Attribution 4.0 International License</a>.</p>
<p><a href="https://github.com/ellerbrock/awesome-koa">koa.md
Github</a></p>