Ruby
- ruby: Ruby 源代码
- spyke: 像使用 ActiveRecord 一样使用 RESTful API
- reactive_record: 根据 ActiveRecord 的 数据库 Schema 来反向生成 Model
- eventmachine: Ruby 中著名的事件驱动库
- faker: Perl 的 Data::Faker 库的一个 Ruby 实现,用于虚拟各种类型的数据
- amqp: RabbitMQ 的 Ruby 客户端,基于 EventMachine
- bunny: 另一个 RabbitMQ 的 Ruby 客户端
- thinking-sphinx: Sphinx 全文搜索的 ActiveRecord 插件
- ruby-vips: Ruby 的一款图像处理库, 基于 libvips
- statesman: Ruby 的一个状态机
- aasm: 另一款 Ruby 状态机
- paper_trail: 一款强大的用于记录 Model 变更的库,非常适合于 创建记录的版本和审查变更
- timers: Ruby 的一个 Timer 库,适合于配合事件使用
- gitlab-shell: gitlab 的命令行工具,用于替换 gitolite
- money: Ruby 的一个数字、货币转换库
- money-rails: Rails 的一个数字、货币转换库
- houston: APN 的 Ruby 库
- devise_invitable: Devise 的一个插件,用于邀请用户
- mail: Ruby 的处理邮件的库
- commander: Ruby 的命令行辅助库
- helios: 一个为 IOS 提供后端支撑的库
- middleman: 一个辅助制作静态网站的工具
- pundit: 一个处理认证的库
- refile: 一个处理图片上传的库
- sharedrop: Airdrop 的 HTTP5 实现,基于 WebRTC
- mailman: 处理接收邮件的库
- mruby: mini-ruby (light-weight ruby) 轻量级 Ruby 源代码
- sidekiq-status: Sidekiq 插件,用来监控任务状态
- postgres_ext: ActiveRecord 的插件,扩展了 PostgreSQL 相关的一些功能
- prawn: Ruby 的 PDF 编辑工具
- spring: Rails 的加载器,可以加速 Rails 开发
- rails: Rails 源代码
- newrelic-grape: Grape 的 Newrelic 插件
- newrelic_moped: Moped 的 Newrelic 插件
- rack-attack: 基于 Rack 的防攻击中间件
- rack-utf8_sanitizer: Rack 的 UTF8 序列化中间件
- redis-stat: Redis 监控工具
- rack-mini-profiler: Rack 中间件,用于分析各个性能指标,如 SQL, View渲染等
- memory_profiler: 用于分析内存占用
- gctools: 用于分析和优化 Ruby GC,可以配合 Unicorn 使用
- wicked_pdf: Rails 插件,用于生成 PDF
- request_store: Rack 中间件,用于保存仅单次请求有效的的全局变量,线程安全
- slim: 基于 Ruby 的前端模板引擎,类似于 Haml, 语法更简洁,据说相比于 Haml 会更快一些
- simplecov: Ruby 测试代码的覆盖率分析
- sass: CSS 框架,使得编写 CSS 更加容易和有趣,支持模块化、变量、运算、Mixin等
- slate: 静态的 API 接口文档生成工具,干净、整洁、对手持设备友好、单页应用、代码高亮
- ruby-destroyed_at: ActiveRecord 扩展,支持安全删除
- taps: 支持数据库导入导出 -> 原理是,对导出目标数据库建立一个服务器提供数据接口,然后对目标导入数据库进行数据导入,依赖 Sinatra 启动数据库接口服务
- meta-tags: 为 Rails 应用提供 SEO 优化支持
- logstash: 日志、时间管理工具
- rspec-rails: Rspec 的 Rails 插件
- nokogiri: 一个功能强大,性能良好的用于解析 HTML, XML 的工具,支持 XPath 和 CSS 选择器
- vcr: 一个测试辅助库,纪录一组 HTTP 请求交互,并作为测试重现
- factory_girl: 一个用来准备测试数据的库
- mongoid_paranoia: Mongoid 软删除功能, 通过添加一个 destroyed_at
- treat: Ruby的自然语言处理
- MacGap1: 一款工具可以将 HTML/CSS/JS 网络应用打包成 Mac App
- ffi: 可以帮助 Rubyer 开发基于 C 的 ruby 库, 提供了一套接口
- api_cache: 可以为外部接口添加缓存的工具
- ckeditor: Rails 的 Ckeditor 插件
- mailboxer: Rails 插件, 可以发送消息/邮件
- gc_tracer: Ruby GC 跟踪器
- carrierwave-qiniu: Carrierwave 的 七牛 插件
- mongoid-ancestry: Mongoid Ancestry 实现
- countries: 一个库包含全球各个国家的信息 (ISO 3166 (countries and states/subdivisions ), ISO 4217 (currency), and E.164 (phone numbers))
- chruby: 切换 Ruby 的版本 和 可以和 ruby-install 配合
- ruby-install: 用来安装 Ruby, JRuby, Rubinius, MagLev 或者 MRuby 环境
- caphub: 基于 capistrano 的集中发布管理实例
- chruby: capistrano 的 chruby 支持
- byebug: Ruby 2 的一个调试器
- opal: Ruby -> Javascript 代码转换工具
- volt: Ruby 的 一个 Web 框架, 使用 opal 使得前后端均可以用 Ruby 编写
- tunemygc: 用于分析 Ruby 的 GC, 并给出最合适的配置
- parallel: Ruby 的一个并行运算库
- http.rb: Ruby 的一个 HTTP 库, 提供了链式的语法和完全的 Streaming 支持
- has_scope: 用于在控制器中钩子中使用Scope
- linguist: Github 官方出品, 用于识别编程语言, 以及代码高亮
- markup: Github 官方出品, 用于解析各类 markup 文件
Python
- django: 一个全栈式的 web 框架, 类似于 Rails
- django-rest-framework: django 的 一个 Rest API 框架
- wifiphisher: WIFI 中间人钓鱼攻击工具,获取用户名密码
- python-prompt-toolkit: Python 的交互命令行工具,提供代码补全、高亮等
- redis-rdb-tools: Redis 的 dump.rdb 文件解析器,用于分析内存使用、导出 JSON 以及 比较不同 rdb 文件差异
- supervisor: 类UNIX下用于控制进程的一个开源库,通过配置可以监控、自动重启各种服务
- pyenv: Python 版本管理工具,类似于 RVM
- pyspider: 一个爬虫系统
Node.js
- Node-Webkit.js: Node-Webkit 是基于Chromium 和 node.js的运行环境,可以用来创建桌面应用程序
- request: 基于 Node.js 的用于网络请求的库,使用简单,功能强大
- hapi: 一个配置优先的 web 框架,hapijs.com
- psi: 用于分析页面速度的工具,支持命令行
- gulp: 基于 Node.js 的流式构建系统
- orchestrator: 一个可以并行执行任务和依赖的库
- johnny-five: 用 Javascript 控制机器人
- popcorn-js: Mozilla 的一个开源项目,允许开发者基于 HTML5 音视频的时间线添加互动元素,比如注释,字幕,甚至动画
- connect: Node 中间件支持,注:Express 4 以下依赖此库,从 4 开始支持全新的 Router,类似于 Rails Engine
- faker.js: Faker 的 Node 实现,用于生成假数据
- chart: 用于终端生成 ASCII 图表
- drawille: 用于终端生成 ASCII 图形
- sparkly: spark.sh 的一个 Javascript 实现,终端生成 sparklines
- node-inspector: Node 的调试神器,使用方法,用
node-debug
代替node
启动服务,并在你想调试的地方输入debugger
- NodeOS: 基于 Node 的操作系统
- pdfkit: Node 和 浏览器均可以使用的,用于生成 PDF 的库
- empty-trash: 清空垃圾桶
- trash: 安全删除文件 -> 将文件放入垃圾桶
- rabbit.js: RabbitMQ 的 Node 客户端
- htmlbars: 基于 Handlebars 的一个变种,可以编写直接操作 DOM 的辅助方法
- sharp: Node 的一个图像处理的库,基于 libvips
- debug: 一个用于在 console 或者 浏览器输出日志,方便与 Debug 的工具
- github-contributions: 一个好玩的库,用于在 github 的 contribution calendar 上输出你想要的文字或者图案
- hexo: 基于 Node 的静态博客,类似于 Octopress
- GhostScroll: Ghost 的一个主题
- ghost-themes: 多个 Ghost 主题
- TermKit: 一个基于 Chrome 和 Node 的终端应用
- h5ai: 配置简单,美观的 http 静态目录,支持 Nginx、Apache 等
- http-server: Http 静态服务器,基于 Node, 配置简单
- node-apn: Node 的 APN (Apple Push Notification) 模块
- chai: Node 的 TDD/BDD 测试框架
- io.js: Node 的一个分支,更加活跃,开发更激进,最终的目的是合并入 Node.js
- immutable-js: 不可改变的集合, 前后端通用
- node-migrate: Node 的数据库迁移框架
- pomelo: Node 游戏服务器框架,网易开发
- blessed-contrib: 构建终端信息板 (Dashboard) 利器
- node-notifier: Node 模块,可以发送本地通知,支持 Mac/Windows/Linux
- prerender: 用于预解析网站,主要解决单页应用(angular.js ember.js backbone.js 等)的搜索引擎 SEO 支持
- spider: 一种新语言,目标是编译成 Javascript
- jsdoc: 用来生成 Javascript API 文档的库
- browser-sync: 多浏览器(多设备)同步库,监控 CSS/Javascript/HTML 的变更并通知到浏览器;监控浏览器的操作,如滚动、点击等事件,同步到所有的开发设备。前端开发利器!
- tmi: 基于 Node 的命令行工具, 用于计算网站图片的权重,以及那些图片可以进一步优化
- 6to5: 转换 ES6 代码为 ES5,提前使用 ES6 语法带来的各种畅快!
- js-xss: 根据白名单过滤HTML(防止XSS攻击)
- PM2: Node 进程管理,内置负载均衡,提供自动重启,热启动等功能,适合在生产环境下使用
- sinopia: 私有 NPM 服务器
- validator.js: 校验工具(url,邮箱,整数等), 内置几十种校验方法,前后端通用
- wechat: 微信公共平台消息接口服务中间件
- superagent: 更 NB 的 Ajax 请求库,号称比 jQuery 更好用,前后端通用
- cheerio: Server 端的 jQuery, 相同的 API,支持 DOM 操作等
- node-restify: Node.js 的 REST API 框架,从 Express 中借鉴了很多,并去除了 render 等方法
- ejs: Node.js 的前端模板引擎, 使用 <%= %> 直接在 HTML中嵌入,简单易学
- Bluebird: 另一款实现 Promises/A+ 的库,相比于 Q,性能卓越
- node-amqp: RabbitMQ 的 Node 客户端
- Knex: SQL 生成器,支持 PostgreSQL, MySQL 和 SQLite3, 用于和 Bookshelf 配合使用
- node_redis: Node 的 Redis 客户端
- elasticsearch-js: ElasticSearch 的 Node 客户端
- Passport: Node 的认证中间件,支持 Express, 组件丰富, 支持多种认证策略,OAuth
- everyauth: 认证库,支持多种策略,OAuth,支持 Express
- node-oauth: Node 的 OAuth 支持
- restler: 一个 Node REST 客户端
- oauth2orize: Node 的服务端 OAuth支持
- Mocha: Node 的 TDD/BDD 测试框架
- nodemon: 开发时使用, 自动检测文件变更, 并重启服务
- hiredis-node: hiredis 的 Node 模块
- node-jsonwebtoken: JsonWebToken 的 Node.js 实现
- js2coffee: 将 Javascript 转换成 CoffeeScript 的一个工具
- grunt-injector: Grunt 的 JS/CSS 自动注入工具, 可以自动将 JS/CSS 的引用注入到 HTML 文件中
- NativeScript: 使用 Javascript 来编写 IOS / Android 以及更多平台原生软件的库
- rosie: 用于生成 Javascript 对象, 方便测试, 类似于 factory_girl
- jsduck: javascript 文档生成工具
- shelljs: shell 命令的 Node.js 封装, 支持 local 和 global 两种模式
- daemon.node: 以后台守护进程启动 node 应用的最小化实现, 可作为学习源码使用
- blessed: Node 的命令行界面工具, 一共一组高级接口支持命令行绘图, 动画等
- node-spdy: Node 的 SPDY 支持
- node-fibers: Node 的 Fiber 实现
- fast.js: 对 JS 的一些方法的重新实现, 提供更高的性能
- log4js-node: Log4js 的 Node.js 版
- https://github.com/andrewplummer/Sugar: Javascript 原生类型的功能扩充(Monkey Patch), 提供了各种语法糖
- shelljs: 各种 Shell 命令的 Node 实现
- Meteor: 一个基于 Node.js 的平台,用于开发实时网页和移动应用
- Koa: Node.js web 框架,Express 原班人马打造,推崇极简,通过 generator 实现异步控制
Express
- express-admin: Express 的后端,支持(MySQL, MariaDB, SQLite, PostgreSQL)
- grant: Express 认证中间件(middleware)
Erlang
- kerl: 版本管理器, 用于管理 Erlang/OTP 实例, 类似于 RVM
- rabbitmq-server: RabbitMQ 消息队列 源码
- rabbitmq-tutorials: RabbitMQ 教程
- ejabberd: XMPP 协议的开源实现,用于及时聊天软件,Whatsapp 的聊天核心就是这个软件
- elixir: 基于 Erlang VM 的一个语言,语法类似于 Ruby
- phoenix: 基于 Elixir 语言的 web 框架
Java
- elasticsearch: 开源的分布式搜索引擎,社区活跃,支持强大
C/C++
- json: C++ 的 JSON 库
- simple-rtmp-server: 运营级的互联网直播服务器集群
- mozjpeg: JPEG 图片解码压缩,Mozilla 出品
- libsass: SASS 的 C++ 实现
- QQStars: 基于 WebQQ 协议和 QT 开发的 QQ 客户端
- caffe: 一个关于数据挖掘的库
- fastsocket: 一个高扩展性的 Socket 库,在多核设备上有良好的表现,新浪出品
- C: 将 C 语言校本化的一个工具, 可以直接编写 C 语言作为脚本使用
Go
- delve: Go 调试器
- go: Go 源码
- beego: 国内大牛开发的 Web 框架
- revel: 全栈 Web 框架
- martini: 另一款 Web 框架
- pgweb: PostgreSQL 的 Web 数据库浏览器
Lua
- lua-nginx-module: 一个 Nginx 组件包, 可以使用 Lua 来开发 Nginx 插件, 将之变成一个全功能的 Web 应用服务器
- kong: 一个专注于可扩展, 高性能以及可靠性的 Restful API 框架
FROM https://github.com/lyfeyaj/awesome-resources/blob/master/docs/zh-CN/02-web-backend.md