Skip to content

ueqt/awesome-nodejs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 

Repository files navigation

精彩的Node.js

受到精彩的php精彩的python 的启发,整理了精彩的Node.js的框架,库以及资源的列表。

欢迎提交各种相关资源!让我们一起来打造最精彩的Node资源列表!

目录:

环境管理

Node虚拟机

  • nodeenv - Node.js的虚拟环境,提供独立的Node.js运行环境(Python)
  • nave - Node的虚拟环境(sh脚本)

Node版本管理

  • n - Node版本管理,可以安装不同版本的node,可以多个版本的node并存
  • nvm - Node版本管理器(不用装node即可使用).

*n vs nvm个人喜欢:n

桌面应用

  • Atom Shell - 可以使用nodejs编写桌面应用,并且跨平台,支持mac,linux,windows,与node-webkit的区别在于,前者启动时是启动js文件,后者启动html文件,前者可控性更高。

node-webkit案例:LightTable atom-shell案例:Atom

集成开发环境

开发用的IDE和编辑器

  • Webstorm - 最好的Nodejs编辑器,有的话就不用看下面这些了。
  • Visual Studio - 需要安装插件 Node.js Tools for Visual Studio (支持编辑,智能感知,分析,npm,TypeScript,本地调试以及Windows/MacOS/Linux上的远程调试)。
  • Enide - 带Nodeclipse插件的Node Eclipse IDE。
  • InteliJIDEA - InteliJ的Node.js插件,和Webstorm同一家公司出品。
  • Atom - Github出品的可自定义编辑器(用Atom Shell开发的)。
  • Brackets - 使用JavaScript,HTML,CSS编写的开源web代码编辑器。
  • Cloud9 - 带协作工具的web编辑器。
  • Notepad++ - Notepad++就不用解释了,能用这个写代码的都明白这是什么。
  • CmdEr - 不是IDE,但是Windows上的控制台模拟器(用这个不如安装Github的git shell)。
  • Cloud Commander - Web文件管理。有编辑器和控制台。可以让你开发Web应用,站点等。

文档

项目文档生成库

  • Docco - Docco是一个快速但是丑陋的文档生成器, 由Literate CoffeeScript编写。
  • Groc - 以文学编程为宗旨的文档生成器。
  • dox - JavaScript文档生成器,使用markdown和jsdoc生成node文档。

包管理

包和依赖管理库

  • Npm - 默认包管理工具。安装,发布,管理node程序。(必用!识node不识npm犹如识.net不识nuget)
  • Npmsafe - 因为npm安装存在钓鱼的风险,所以用这个库更安全。(必用!)

生成工具

生成和任务执行工具

  • Gulp.js - 流生成系统,基于流和代码胜于配置。
  • Grunt.js - 任务执行器,可简化单元测试,编译等任务。

后端Grunt前端Bower,近乎标配,但是google的web starter kit更推荐gulp,因为gulp基于js,grunt基于json,孰优孰劣,可见一斑

  • Nodemon - 监控代码变化,自动重启服务器的开发工具。
  • Browserify - Browserify让你可以在浏览器中使用require('modules')来打包你的依赖。

通讯

  • Socket.IO - Node和Javascript的Websocket框架。
  • SockJS - Websocket模拟器.
  • Primus - 阻止模块锁住的实时框架抽象层。
  • BinaryJS - BinaryJS是处理实时二进制数据的二进制webscoket。

调试工具

调试Node应用的工具

  • node-inspector - 基于Blink开发工具的Node.js调试器。
  • longjohn - Node的长堆栈跟踪器。
  • TypesJs - Node和浏览器的简易类型检查。
  • Nodev - 基于nodemon和node-inspector的更方便的调试工具。
  • cf-node-debug - 用来帮助调试运行在Paas上的node的代理。

日志

生成和管理日志的工具

  • winston 好用的日志生成库。
  • caterpillar - 可以记录日志和输出到不同目标的日志系统。
  • tracer - Node.js的强力和可自定义日志库。
  • Log.io - 浏览器上的实时日志工具。
  • Bunyan - Node.js服务的简单高效JSON日志模块。

数据库驱动

连接和操作数据库的库

ORM

实现ORM或datamapping技术的库

  • Sequelize - 方便地访问MySQL, MariaDB, SQLite 以及PostgreSQL数据库。
  • Node-orm2 - 另一个ORM。
  • Mongoose - mongodb的ORM。
  • Waterline - 简化多个数据库的交互。

Web框架

Web开发框架

  • Express - 小而全的Nodejs web开发框架。主流!但原作者跑去写Go了。
  • Flatiron - 编写现代化web应用的可适配框架。
  • Koa - 旨在打造更小,更便捷,更高扩展的web应用框架。Express原班人马打造,下一代框架。
  • Totaljs - 高响应的node web应用框架。
  • Meteor - 实时web应用框架。获得1120万美元风投。未来的框架。
  • Derby - 方便编写实时应用的MVC框架。
  • HuntJS - 事件驱动框架。
  • Pomelo - 网易出品的Nodejs游戏开发框架。

RESTful API

开发RESTful API的库

  • Hapi - Restful API的快速框架。
  • Sails - 生成RESTful JSON API的MVC框架。
  • Node-restify - 生成REST web服务的node模块。
  • Heimdall - Express的REST API插件。

应用服务

运行和管理多个应用

  • PM2 - 必用!生产环境中的不二法宝。管理多个node进程,崩溃自动重启,日志查看等功能。
  • Impress - 高负载,可扩展的应用服务。

CMS

  • Calipso - 简易CMS,类似Drupal和Wordpress的皮肤。
  • KeystoneJS - Node.js CMS,由Express和MongoDB构建的Web应用平台。

表单

处理表单和表单数据的库

文件和MIME类型操作

  • PDFKit - Node和浏览器的JavaScript PDF生成库。

验证和OAuth

实现验证的库

  • PassportJS - 简易验证中间件库。
  • ldapjs - 纯JavaScript框架,用来实现LDAP客户端和服务端。
  • oauth-signature-js - OAuth 1.0a签名生成器。
  • Lockit - Express的全功能验证方案。

模版引擎

模版和词法工具

  • ECT - "内嵌CoffeScript语法的快速JavaScript模版引擎。"
  • Jade - node模版引擎。
  • Swig - 简单,强大,易扩展的JavaScript模版引擎。

生成CLI的工具

命令行接口生成工具

异步流程控制

管理异步控制,避免回调地狱

  • 基于回调:
    • Async - 直接的,功能强大的异步jas模块。好用!
    • node-seq - nodejs链式异步流程,并行,以及pipeline式的错误处理。
  • 基于Promise (Promises/A+):
    • Q - 拥有大量API,包含各种场景的功能完整的promise库。
    • RSVP.js - 轻量级,但是可以使用的promise库。
    • when.js - 常用的promise库。
    • Bluebird - Bluebird是关注于创新功能和性能的全功能promise库。
  • 基于Fibers (node-fibers):
    • asyncawait - 参考C#的async/await功能,实现相同的模式。
  • 基于生成器:
    • Co - 基于生成器的流程控制。

Rate Limiting

Libraries that help restrict the frequency of certain actions.

  • Bottleneck - A powerful rate limiter that makes throttling easy.

测试

测试框架

  • mocha - Mocha是一个运行在node.js上的功能齐全的JavaScript测试框架,使异步测试方便而有趣。
  • tape - 为node和浏览器定制的测试。
  • should.js - nodejs的BDD风格断言。
  • chai - BDD / TDD 断言框架,可与任何其它框架配套使用。
  • sinon - 独立的Javascript测试间谍, stub以及mock。
  • Jasmine - 简易的Node和Javascript的行为测试。
  • Expresso - Node的TDD框架。
  • NodeUnit - 简单语法的单元测试工具。
  • Concrete - CI服务。
  • ready.js - javascript CI工具。
  • Jezebel - Jasmine测试的REPL以及持续集成测试工具。

杂项

  • Github Linker - Chrome扩展,提供github上package.json的依赖库的超链接。

其它精彩列表

可以在awesome-awesome 以及 awesome-awesomeness 中找到其它精彩列表。

贡献

欢迎您提出宝贵意见和建议!

About

Node.js框架,库,资源列表。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published