20 Node.js projects that you should know about to increase productivity

Post to Twitter

Node.js continues to grow through a very active community. Like all other technologies it has its own share of detractors and promoters. Today I want to point out 20 projects that work with Node.js and can help increase your productivity.

1. Everyauth

Everyauth is authentication and authorization (password, Facebook, Twitter, GitHub, Google, DropBox, and many more) for your Node.js Connect and Express apps complete with an easy to follow example.

2. Math Race

Have you ever wanted to write your own realtime game in Node.js? Look no further, the code here is easy to follow for any beginner.

3. BrowserQuest

Do you want to see the source code for a massively multiplayer HTML5 (WebSocket + Canvas) game experiment? BrowserQuest is written in HTML5/JavaScript/Nodejs and it’s available across a lot of different browsers and platforms. The game can be played in Firefox, Chrome and Safari with WebSockets enabled. Moreover, it’s compatible with iOS devices, as well as tablets and phones running Firefox for Android. I’ve played it on my iPad and it worked great.

4. NodeMailer

Do you need to send email using Node.js? Attachments? Templates? Not a problem, check out this tutorial to get started.

5. Mongoosastic

A Mongoose plugin that indexes models into ElasticSearch. If you don’t know what ElasticSearch is you owe it to yourself to find out. Then you will really appreciate this project even more.

6. Socket.IO and SocksJS-Node

Ok, I’m lumping both together in one. If you want to work with WebSockets then look no further. Each project has its own pros and cons which I won’t get into but I’ve worked with each and have been impressed on how easy and well documented they are as well as how stable they’ve both become. Don’t forget to check out my getting started tutorials for SockJs-Node and Socket.IO.

7. ExpressJS

You’ve probably head of ExpressJS. ExpressJS is high performance, high class web development for Node.js. A lot of people use it and it is actively being developed. It’s built with Connect so it comes to the table with a lot of functionality already built-in.

8. Mongoose

Do you work with MongoDB? Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. I’ve previously used Mongoose in an experimental project called JSONFeedServer.

9. Request

Request is a simplified HTTP request client. Very easy to use, supports streaming as well as OAuth signing and more. This is a great project to write HTTP clients that need to fetch data from a URL for testing purposes or otherwise.

10. Node-Genx

Working with XML? Node-Genx = Node.js bindings to the Genx XML generation library. Easy to use and good examples. I have an article that uses this project.

11. ElementTree

Here is another Node.js Library To build and parse XML documents. I’m using this at work to page through Atom Hopper feeds quickly. Check out my article on using this project. If you’ve worked with ElementTree in Python then you will be right at home with this project.

12. Node-XML2JS

Node-XML2JS is a simple XML to JavaScript object converter. From the repo: “Ever had the urge to parse XML? And wanted to access the data in some sane, easy way? Don’t want to compile a C parser, for whatever reason? Then xml2js is what you’re looking for”. I have an article that will introduce you to this project.

13. Node_Redis

Node_Redis is a complete Redis client for node.js. It supports all Redis commands, including many recently added commands like EVAL from experimental Redis server branches. I have some articles that you can use to get started.

14. CoffeeScript

CoffeeScript, wow! Can’t seem to go wrong with this – of course as usual some people love it, some people hate. Makes working with JavaScript much easier in my opinion and generates pretty clean JavaScript. I have several articles on CoffeeScript and Node.js.

15. Whiskey

I’ve used Whiskey (my very first test is here) and I like it. Rackspace released it not too long ago and wrote a good article on it.

16. Hook.IO

Hook.IO is a versatile distributed event emitter built with Node.js which lets you build applications intelligently by combining together small hook actors.

17. ZeroRPC

ZeroRPC is a light-weight, reliable and language-agnostic engine for distributed communication that builds on top of ZeroMQ and MessagePack.

How easy is a Hello World server?

var zerorpc = require("zerorpc");

var server = new zerorpc.Server({
    hello: function(name, reply) {
        reply("Hello, " + name);


18. Restify

Restify is a Node.js module built specifically to enable you to build correct REST web services. Check out my getting started Restify article here.

19. Moment.js

Moment.js is a lightweight date library for parsing, manipulating, and formatting dates. It works in both Node.js and in the browser and is very well documented.

20. Underscore.js

Underscore.js is a utility-belt library for JavaScript that provides a lot of the functional programming support that you would expect in Prototype.js (or Ruby), but without extending any of the built-in JavaScript objects. Comes in very handy for all sorts of things like working with Collections and Arrays and much more.

Bonus: Async

Async is a utility module which provides straight-forward, powerful functions for working with asynchronous JavaScript. Although originally designed for use with node.js, it can also be used directly in the browser. Lots of good docs with examples, some people like this sort of thing others don’t but definately check it out.

Post to Twitter

This entry was posted in Node.js. Bookmark the permalink.

4 Responses to 20 Node.js projects that you should know about to increase productivity

  1. Nice post man!! It’ll be very useful for me and for my project http://treinosmart.com which I’m using Node.js + MongoDB

  2. In my opinion, Async needed a higher spot in this list! I use it in all my projects.

    I’d also recommend Sugar.js (http://sugarjs.com). Adds awesomesauce to JavaScript. Includes most, if not all, features of moment.js too.

  3. MomentJS and Restify will be used in my next project now!

  4. Pingback: Learning Node.JS: News, Videos and Tutorials « Hanger Designs || Web development & Design By Owain Llewellyn

Comments are closed.