Skip to content

Koa 资源大全中文版。An awesome Koa packages and resources

License

Notifications You must be signed in to change notification settings

huaize2020/awesome-koa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 

Repository files navigation

English | 简体中文

正在持续建设中...

同时推荐你查看我正在维护的其他仓库

目录

官方文档

资源

教程

  • koa-analysis - 「若川视野」学习源码整体架构系列多篇之koa源码。

仓库

框架

  • Egg - 为企业级框架和应用而生。
  • ThinkJS - 支持ES2015 +的框架, 支持TypeScript。
  • midway - 面向前端/全栈开发人员的 Node.js Serverless框架。 Midway 可以使用 koa、express 或 EggJS 作为基本的 web 框架。
  • lad - 最好的Node.js框架,由前Express和Koa团队成员创建。
  • CabloyJS - 一款自带工作流引擎的Node.js全栈框架, 基于koa + egg + vue + framework7.
  • koatty - Koa2 + Typescript = Koatty。使用Typescript装饰器实现了控制反转和面向切面编程。

案例 & 样板程序

  • node-typescript-koa-rest - 使用 NodeJS、Koa2、TypeScript的样板程序,包括 TypeORM、class-validator, SQL CRUD. Docker、Swagger docs, actions CI 等。
  • koa-rest-api-boilerplate - Node.js Koa RESTful API 样板程序,带 Docker、Swagger、Jest、Coveralls 和 CircleCI。
  • koalerplate - 一个简单的使用 ES6 de Koa 2 样板。

内容管理系统 (CMS)

  • Strapi - 用于构建强大 API 的内容管理框架 (headless-CMS)。

中间件

JSON

  • koa-json - 将 JSON 打印美化的中间件。
  • koa-json-filter - 该中间件允许客户端只过滤他们需要的响应,减少线路上的流量。
  • koa-json-mask - 该中间件允许客户端只过滤他们需要的响应,减少线路上的流量。
  • koa-is-json - 检查 koa 主体是否应该被解析为 JSON。

JSONP

CSS预处理器

主体解析(Body解析)

  • koa-bodyparser - 用于Koa,基于co-body的主体解析。
  • koa-body - 功能齐全的 koa 主体解析器中间件。支持 multipart、urlencoded 和 json 请求正文。 提供与 Express 的 bodyParser 相同的功能 - multer。
  • koa-better-body - 功能齐全的 koa 体解析器!支持解析文本、缓冲区、json、json patch、json api、csp-report、multipart、form和urlencoded body。 适用于 koa@1、koa@2 并将适用于 koa@3。
  • koa-multer - Multer 是一个 Node.js 中间件,用于处理 koa 的 multipart/form-data。 koa 中间件的 multer 封装。
  • koa-xml-body - 解析 xml http 请求正文。
  • koa-busboy - 处理 koa v2 的 multipart/form-data 数据。
  • koa-json-body - 解析合法的 JSON 请求正文。
  • koa-body-parsers - Koa请求正文解析器集合。

工具

  • koa-compose - 组合多个中间件为一个。
  • koa-convert - 将koa legacy (v0.x & v1.x版本) 生成器中间件转化为promise中间件(v2.x)。
  • koa-connect - 在Koa中使用connect和express中间件。
  • koa-useragent - 快速显露user-agent的中间件。

视图渲染

  • koa-views - 可使用几乎任何模板引擎渲染你的视图。
  • koa-ejs - Koa视图渲染中间件,支持ejs所有特性。
  • koa-react-view - Koa视图渲染中间件,用于在服务端渲染React组件。
  • koa-hbs - Express风格视图渲染。
  • koa-pug - Pug (原名Jade) 中间件。
  • koa-handlebars - Handlebars视图渲染中间件。
  • koa-swig - swig视图渲染中间件, 支持标签,过滤器和插件。
  • koa-vue-view - Koa视图渲染中间件,用于在服务端渲染Vue组件。 image
  • koa-view - Nunjucks视图渲染中间件。
  • koa-nunjucks-next - Nunjucks视图渲染中间件, 支持异步过滤器,渲染原始字符串。
  • koa-dom - 服务端渲染DOM模板。
  • koa-xtpl - xtemplate模板引擎的封装(使其在Koa 2使用更简单).
  • koa-nunjucks-async - 一个Koa@2 Nunjucks视图渲染中间件。使用 Node 的原生 async/awaitutil.promisify。 还将 ctx.state 暴露给渲染模板。
  • co-ejs - koa ejs视图渲染中间件。
  • koajs-nunjucks - Nunjucks视图渲染中间件。
  • koa-swig-render - swig视图渲染中间件.
  • koa2-jsx - JSX 使用服务器端 React 方法渲染,Redux 支持从上下文设置模板数据。可用于创建通用应用程序。
  • koahub-handlebars - Handlebars视图渲染中间件, 使用async/await

文件服务

  • koa-static - 静态文件服务中间件。
  • koa-send - 传送静态文件。
  • koa-static-cache - 带缓存的静态文件服务。
  • koa-favicon - 基于 serve-favicon提供网站图标服务favicon。
  • koa-static-server - 具有目录、重写和索引支持的 koa 静态文件服务中间件。
  • koa-sendfile - 基础文件发送工具。
  • koa-file-server - 具有附加功能的静态文件服务,如支持 etag 和 SPDY 推送。
  • koa-stream - 支持范围请求的文件发送实用程序。
  • koa-better-serve - 使用 koa-send 提供小型、简单和正确的文件服务——仅此而已。
  • koa-spa - 基于koa-static-cache(静态缓存)构建的单页应用服务器。
  • koa-serve-static - 提供静态文件,基于 Express 的 serve-static
  • koa-static2 - 在用户声明的名称下的文件夹提供文件服务。
  • koa-static-folder - 使用文件夹提供静态文件。
  • koa-serve-list - 基于 Express 的 serve-index 为 koa 提供目录列表。
  • koa-serve - 提供静态文件服务的Koa中间件。

路由和挂载

授权/鉴权

数据库

Graphql

  • koa-graphql - 用于创建GraphQL HTTP服务器的中间件。
  • koa-graphiql - Koa 中间件用于显示GraphiQL,一个交互式 GraphQL UI。

压缩

Session

  • koa-session - 简单基于Cookie的Session中间件。
  • koa-generic-session - 基于内存、redis或其他的Session存储中间件。
  • koa-redis - 使用Redis的Koa Session。
  • koa-session2 - Koa2 的中间件,用于获取/设置与自定义存储(如 Redis 或 mongodb)一起使用的会话。
  • koa-session-minimal - 对koa-generic-sessionKoa 2重写,支持其核心功能和存储。
  • koa-redis-session-sets - 带有字段引用交叉集的 Koa Redis Session。

Cookies

缓存

WebSocket

  • koa-easy-ws - 一个简单处理WebSocket的简单中间件。

限流

  • rate-limiter-flexible - 在单进程或分布式环境中按原子增量Key限制请求以防止任何规模的 DDoS 和暴力攻击。
  • koa-ratelimit - 限流中间件。
  • koa-better-ratelimit - 支持自定义存储、自定义 ID、自定义错误消息和自定义头。
  • koa-ip-filter - Koa 中间件,可使用glob模式、数组、字符串、正则表达式或匹配器函数过滤请求 IP 或自定义 ID。 支持自定义 403 Forbidden 消息和自定义 ID。

文档

  • koa-swagger-decorator - 使用装饰器为 koa-router 自动生成 swagger 文档。
  • swagger2-koa - 使用 swagger2 的 Koa 2 中间件。
  • koa-docs - 用于自动生成和提供API文档的Koa中间件。
  • koa-joi-swagger - 使用 joi 模式验证请求和响应,并生成 swagger 文档以创建漂亮的 API 文档。
  • swagger-koa - Swagger + Koa = {swagger-koa}

安全

  • @koa/cors - 跨域资源共享(CORS)for koa.
  • koa-helmet - 提供重要的安全头header,使您的应用默认更安全。
  • koa-csrf - CSRF tokens。
  • koa-cors - Koa 的 CORS 中间件。
  • koa-roles - Koa版本的connect-roles
  • koa-rbac - 用于Koa的基于角色的权限访问控制。
  • koa-lusca - Koa版本的lusca,用于Koa的应用安全。
  • koa-ip - 用于Koa的Ip过滤中间件。支持白名单和黑名单。
  • koa-authz - 用于Koa2,基于Casbin的授权中间件。
  • koa-ip-filter - koa 的中间件,它使用 ip-filtermicromatch 根据 glob 模式、RegExp、字符串或 glob 数组过滤 IP。 支持自定义 403 Forbidden 消息和自定义 ID。
  • koa-protect - 用于koa应用的安全模块。
  • koa-acl - 用于Koa的访问控制列表(ACL)中间件。

日志

  • koa-logger - 开发风格日志中间件。
  • cabin - Node.js、Lad、Koa、Express 和 Passport 的日志记录/分析服务和中间件。
  • concurrency-logger - 分别记录 HTTP 请求/响应,将它们的并发可视化并在请求的上下文中报告日志/错误。
  • koa-bunyan-logger - 使用Bunyan请求日志的Koa中间件。
  • koa-log4 - 基于log4js-node封装的中间件。
  • koa-pino-logger - Pino日志中间件。
  • koa-morgan - 基于Morgan的中间件。
  • koa-json-logger - HTTP请求/响应/错误的JSON格式的日志。
  • koa-bunyan - 使用node-bunyan的中间件。
  • koa-accesslog - 通用日志格式访问日志的中间件。

错误报告

i18n

  • koa-locales - i18n解决方案。
  • koa-i18n - 基于 i18n-2 的轻量级简单翻译中间件。
  • koa-locale - 从查询参数、子域名、accept-languages或 cookie 中获取区域设置变量。

部署