Files
2025-07-18 23:13:11 +02:00

187 lines
23 KiB
Plaintext
Raw Permalink Blame History

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