Node ecosystem

I annotate here links, resources and people about Node world.

For sure you know node and npm sites.

Despite it is so young, node ecosystem is pretty rich!

Awesome Node.js
A curated list of delightful Node.js packages and resources.

Automation

Build tools and task runners

Gulp

Grunt

Fez

Broccoli

gobble

fly

Module bundlers

Browserify
Browserify lets you require(‘modules’) in the browser by bundling up all of your dependencies. See also browserify-cdn
Webpack
A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows to load parts for the application on demand. Through “loaders” modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, … and your custom stuff.
rollup
the next-generation JavaScript module bundler

Web

Express
Web application framework.
hapi
A rich framework for building applications and services
restify
node.js REST framework specifically meant for web service APIs
Sails.js
Realtime MVC framework.
MEAN.io
A boilerplate that provides a nice starting point for MongoDB, Node.js, Express, and AngularJS based applications.
DocPad
Streamlined web development
Socket.IO
The cross-browser WebSocket for realtime apps.
Primus
Abstraction layer for real-time to prevent module lock-in
Apache Cordova
A platform for building native mobile applications using HTML, CSS and JavaScript.
Helmet
Help secure Express apps with various HTTP headers.

Documentation

Docco
Is a quick-and-dirty documentation generator.
dox
JavaScript documentation generator for node using markdown and jsdoc.
Gitbook
Build beautiful programming books and exercises using GitHub/Git and Markdown.
YUIDoc
JavaScript Documentation Tool

CLI

nopt
option parser used by npm CLI
Commander
A light-weight, expressive, and powerful command-line framework for node.js.
cli-table
Pretty unicode tables for the CLI with Node.JS.

Test

testling
Run your browser tests on every push
mocha
simple, flexible, fun, feature-rich test framework
should
BDD style assertions for node.js – test framework agnostic
Vows
Asynchronous behaviour driven development for Node
intern
A next-generation JavaScript testing stack

Other

n
Node version management
localtunnel
expose yourself to the world
ShellJS
Portable Unix shell commands for Node.js
async
Higher-order functions and common patterns for asynchronous code

People

Ryan Dahl

substack

TJ Holowaychuk

isaacs

Sites

Node weekly news and articles

Felix’s Node.js Guide

Node.js modules

Node Frameworks
Hand-picked registry of Node.js frameworks
Node webmodules
A collection of web frameworks for Node.js

Articles, tutorials and others resources

Ryan Dahl: Introduction to Node.js (video)
slides

Original Node presentation

Jade Syntax Documentation

Creating and publishing a node.js module

Generators in Node.js: Common Misconceptions and Three Good Use Cases

Node.js: managing child processes

Better logging in Node.js
Add context to your log messages

Cross platform JavaScript with Browserify – Sharing Code Between Node.js and the Browser

Command-line utilities with Node.js

Using Node.js in Production

Error Handling in Node.js

P2P workshop
by mafintosh

10 Habits of a Happy Node Hacker (2016)

Streams

Node Streams: How do they work?

An Introduction to Node’s New Streams

Stream handbook

An Introduction to Node Streams (video)
In 8 minutes, Hendrik Swanepoel demonstrates how to create your own read, write, and transform stream, complete with written notes accompanying the video.
Node.js Stream Playground
Created by John Resig to help Node.js developers better understand how streams work by showing a number of use cases that are easily plug-and-play-able.

Security

Building Secure Node.js Applications

Node.js Security Tips

Web Assembly

Getting Started With WebAssembly in Node.js

Async/await

The 80/20 Guide to Async/Await in Node.js

Promises

Promise nuggets

Paas hosting