NodeJS常用模块推荐cluster&forevercluster&forever虽然nodejs原生已经提供了cluster模块,大部分情况下可以满足我们的基本需求,但这两个模块cluster和forever都提供了更强大的功能。cluster及forever都能让你的nodejs应用的管理更加方便,比如启动、重启、停止你的应用。他们也都可以保证应用的稳定性,如果你的nodejs程序存在错误而使进程关闭了,cluster或forever都能自动重启他们,以保证nodejs应用零宕机。Github地址://github.com/LearnBoost/cluster2条评论·一回·2012-03-2417:47GeddyGeddyGeddy是一个用于NodeJS的web开发框架,遵循MVC,其目标是易用、模块化和高性能。主要功能强大、灵活的路由功能简单易用,基于资源(resource-based)的路由附有app和resource生成器内容协商(Content-negotiation)session支持模板(EJS)、局部视图(partial)支持完全的非阻塞有兴趣的可以去看一下它的详细介绍,一回觉得geddy是一款非常不错的web开发框架,除了express开发者又多了一种选择。Github地址条评论·一回·2012-03-2115:24node-devnode-devnode-dev模块是一个开发工具,当你的js文件修改保存后,他会自动重启服务进程,嫌CTRL+C/up/down费劲的同学可以尝试用它减轻开发调试的烦恼。另外它还支持桌面提醒使用方法node-dev--debugapp.jsGithub地址条评论·一回·2012-03-2005:13node_redisnode_redis是为NodeJS而写的Redisclient,它支持所有Redis命令。使用方法varredis=require(redis),client=redis.createClient();client.on(error,function(err){console.log(Error+err);});client.set(stringkey,stringval,redis.print);client.hset(hashkey,hashtest1,somevalue,redis.print);client.hset([hashkey,hashtest2,someothervalue],redis.print);client.hkeys(hashkey,function(err,replies){console.log(replies.length+replies:);replies.forEach(function(reply,i){console.log(+i+:+reply);});client.quit();});Github地址添加评论·一回·2012-03-1921:28html2jadehtml2jadehtml2jade模块可以方便的转换现有的HTML到Jade格式。目前仅支持OSX和Linux平台。使用方法抓取URL并转换源码html2jade会输出到终端控制台html2jade输出到twitter.jade文件转换现有HTML文件html2jademywebpage.html#输出到mywebpage.jadehtml2jadepublic/*.html#转换所有.html文件到.jadeGithub地址添加评论·一回·2012-03-1615:19node-canvasnode-canvasNodeJS的Canvas实现,基于Cairo。可以像浏览器端一样做图片处理:varCanvas=require('../lib/canvas'),Image=Canvas.Image,fs=require('fs');varimg=newImage;img.onerror=function(err){throwerr;};img.onload=function(){varw=img.width/2,h=img.height/2,canvas=newCanvas(w,h),ctx=canvas.getContext('2d');ctx.drawImage(img,0,0,w,h,0,0,w,h);varout=fs.createWriteStream(__dirname+'/crop.jpg');varstream=canvas.createJPEGStream({bufsize:2048,quality:80});stream.pipe(out);};img.src=__dirname+'/images/squid.png';Github地址:条评论·一回·2012-03-0715:14xml2jsxml2jsxml2js基于sax-js模块,提供简单的xml到Javascript对象的转换,如需解析DOM,jsdom更合适。使用方法varfs=require('fs'),xml2js=require('xml2js');varparser=newxml2js.Parser();fs.readFile(__dirname+'/foo.xml',function(err,data){parser.parseString(data,function(err,result){console.dir(result);console.log('Done');});});Github地址添加评论·一回·2012-03-0715:10mailermailerNodeJS邮件发送模块,支持定制基于Mustache的模板正文。使用方法varemail=require(../lib/node_mailer);for(vari=0;i<10;i++){email.send({host:localhost,//smtpserverhostnameport:25,//smtpserverportssl:true,//forSSLsupport-REQUIRESNODEv0.3.xORHIGHERdomain:localhost,//domainusedbyclienttoidentifyitselftoserverto:marak.squires@gmail.com,from:obama@whitehouse.gov,subject:node_mailertestemail,body:Hello!Thisisatestofthenode_mailer.,authentication:login,//authloginissupported;anythingelseisnoauthusername:my_username,//usernamepassword:my_password//password},function(err,result){if(err){console.log(err);}});}Github地址添加评论·一回·2012-03-0715:09NideNideNide是一个基于Web的开源的Node.jsIDE,在MITLicense下开源,代码托管于GitHub。其设计思想是简单、易用。Nide最初是在一个叫做NodeKnockout的48小时编程竞赛中开发产生的。当前具有的一些功能/特性:项目树显示。文件操作(创建/删除/重命名文件及文件夹,隐藏/显示隐藏文件)。代码编辑语法高亮功能。OSXLion风格的自动保存功能。OSXLion风格的版本管理,具有恢复及同时进行多个编辑操作功能。即时的项目树过滤(使用正则表达式)。集成NPM(可显示当前已安装包,添加/移除包)。类似TextMate的漂亮的界面。可浏览Node.js文档。2条评论·天猪·2012-03-0613:21jsdomjsdomW3CDOM的Javascript实现。Github地址:添加评论·一回·2012-03-0613:08DoxDox兼容Markdown,JSDoc格式的文档生成器。Github地址:添加评论·一回·2012-03-0613:04JadeJadeJade模板引擎,是express默认的模板引擎。Github地址:条评论·一回·2012-03-0613:00socket.iosocket.io适合构建跨浏览器的实时应用,提供类似WebSockets的API。官方网址:添加评论·一回·2012-03-0612:59uglify-jsuglify-jsJavascript解析和压缩、格式化工具。查看CSSer早期的翻译:添加评论·一回·2012-03-0612:57npmnpmNPM即NodePackageManage,是NodeJS模块管理工具,当前已经内置于NodeJS中,所以不需要特意安装了。NPM官方网址:添加评论·一回·2012-03-0612:54mongoosejsmongoosejsMongoose是MongoDB数据库的模型工具,为NodeJS设计,工作于异步环境下。查看CSSermongoose标签更多内容添加评论·一回·2012-03-0612:51expressjsexpressjsExpress是基于Node.js,高性能、一流的web开发框架。ExpressJS中文入门指引手册地址: