Pages

Sunday, 6 September 2015

Web后端


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