常规工具
脚手架工具
Yeoman:它旨在为开发者提供一系列健壮的工具、程序库和
工作流,帮助开发者快速构建漂亮的
Web应用。
构建工具(自动)
Grunt.js:生态强大,发展速度快,有大量可选插件;
Gulp.js:流式项目构建工具;
Browserify.js:Node.js模块,主要用于改写现有的CommonJS模块,使得浏览器端也可以使用这些模块;
Uglify.js:JavaScript解析器、压缩工具和代码美化库。
软件包管理工具
Homebrew (Mac OS):Apple Mac OS下的软件安装工具;
Apt:Debian、Ubuntu等系列
Linux系统的软件包管理工具,可用来安装、删除、升级软件等;
NPM:Node.js的官方软件包管理器;
Bower:twitter的一个开源项目,用于web包管理。
前端
MVC框架
Backbone.js:提Web开发的框架,为复杂的Javascript应用程序提供模型(models)、集合(collections)、视图(views)结构;
Ember.js:可以创建功能丰富的Web应用程序,并提供一个标准的应用程序架构的JavaScript框架;
Angular.js:一组用来开发Web页面的框架、模板以及数据绑定和丰富UI的组件,无需进行手工DOM操作,还允许为App扩展HTML类库。
模板
Handlebars.js:JavaScript页面模板库,可以为开发者提供必需的语义模板;
Mustache.js:是Mustache模板系统的JavaScript实现,语法逻辑比较简单,适用于C++、Clojure、Erlang、Go、Java、JavaScript等语言;
Jade:Node模板引擎,主要用于Node.js里的服务端模板;
Haml-js:允许在JavaScript项目中使用Haml语法,与原生的Haml拥有差不多的功能;
Eco:可以用来将CoffeeScript逻辑嵌入到标记中。
Casper.js:CasperJS是一个为PhantomJS和SlimerJS准备的导航脚本及测试工具;
Zombie.js:Zombie.js是一个轻量级的框架,可以在一个模拟的环境下测试客户端的 JavaScript 代码,且不需要浏览器的帮助。
后端
服务器
Express:Node的web应用框架;
Node:Node.js是构建于Chrome JavaScript运行时基础上的一个平台,可快速构建网络应用。
数据库
MongoDB:开源的文档存储数据库,也是领先的非关系型数据库;
Postgresql:开源的对象-关系数据库服务器;
SQL:结构化查询语言,可用来存取数据以及查询、更新和管理关系数据库系统。
架构
RESTful:目前流行的互联网软件架构,结构清晰、易于理解、方便扩展。
测试
Cucumber.js:采用受欢迎的行为驱动开发工具并将其应用到JavaScript堆栈中。
Jasmine:行为驱动的开发测试框架,不依赖浏览器、DOM或任何其他JavaScript架构,较适合网站、Node.js项目或应用在任何可以运行JavaScript的地方。
Mocha:运行在Node.js和浏览器之上,主要用于异步测试。
Q-Unit:单元测试框架,常用于jQuery、jQuery UI和jQuery移动项目,也可以用于测试常规的JavaScript代码。
断言库(Assertion Libraries)
Chai:一个用于Node的BDD/TDD断言库(Assertion Libraries),可与任何JavaScript测试框架进行搭配。
函数式编程工具
Underscore.js:JavaScript库,提供了大量有用的函数编程工具,无需扩展任何内置对象;
Lo-Dash:提供自定义、性能和一致性的JavaScript库。