Frameworks
- actionHero — actionHero is a minimalist transactional API framework for sockets and http clients
- archetype — A web framework leveraging Node.js
- aries — Annotation based MVC framework
- blueprint — Blueprint for a Startup. Middleware, & MVC routing over Node.js & Mongoose
- broke — A porting of the most famous Django Web Framework
- Capsela — A high-level, promises-based web framework with an emphasis on testability (see website)
- Cargobox — Express port with better OOP
- chain — An evented convention for building Node Applications (Stopped Development, for ejsgi)
- Coffeemate — Push coffee-script into web development!
- COKE — A lightweight MVC framework base on Express that speeds up your web development. (Rails like)
- Crux — An MVC web application framework and project management utility, similar in some ways to Rails.
- Derby — MVC framework making it easy to write realtime, collaborative applications that run in both Node.js and browsers
- djangode — A framework that borrows some useful concepts from Django (March 2010, node.JS 0.1.30)
- drty — A Django port to NodeJS. Many Django features, still under heavy development. (January, 2011, 0.2.6)
- Drumkit — DrumKit is a plugin-powered, full-stack Web development framework for Node.js.
- Express — A robust feature rich web development framework inspired by Sinatra
- Express Train — An lightweight MVC web framework built on top of express, offering consistent project structure.
- Ext Core for NodeJS — Templating and some basic tricks of ExtCore and ExtJS(XTemplate,Ext.util.format)
- Flatiron — an adaptable framework for building modern web applications. URL Routing with Director, templating with Plates, data management with Resourceful, middleware with Union (
connect
-compatible), plugins with Broadway, logging with Winston. - Geddy — A hackable Web-app development framework similar to Merb/Rails/Pylons/Django
- GenJi — A simple micro-framework for nodejs.
- Grasshopper — A feature-rich and flexible MVC framework for web applications and services, with integrated dependency injection.
- JaxServer — Application server and framework with template and css engines
- jimi — A framework for writing modular web applications in node.js (tutorial)
- josi — An MVC web framework that’s easy to pick up but doesn’t get in the way. Also see here
- Kassit — rapid building of client-side AJAX applications using Backbone and CoffeeScript
- Katana — Easy to use, modular web framework for any Node.js samurai
- Kiss.js — Web framework for node.js in CoffeeScript. Object-oriented, simple and sexy.
- Locomotive — Effective MVC web development for Node.js inspired by Ruby on Rails
- merlin — Object-oriented MVC framework relying on a robust set of conventions to minimize code. Also ships with optional plugins providing basic CMS-like functionality.
- Meryl — Minimalist web framework! See wiki
- Mojito — An MVC framework and JavaScript library for building full-featured, device-independent HTML5 applications running on both client (browser) and server (Node.js). See the Mojito Documentation Directory for more information.
- Monorail.js — Ultra leightweight MVC web framework.
- N-Ext — Ext.core, Ext.util and Ext.data packages in your NodeJS apps (includes a MongoDB proxy based on node-mongodb-native)
- nCombo — A client-server framework for building rich cloud applications
- node-extjs — Run ExtJS4 data models on Node.js
- nodemachine — A port of WebMachine to Node.js
- nodepress — High-level web framework for nodejs, can be used as a blog by default
- Omni.js — A framework for building realtime apps with Backbone.js. Automatically propagates models/collections to the client.
- partial.js – Web application framework (MVC, REST) for node.js / NO DEPENDENCIES, inspired by ASP.MVC & RAZOR
- PieJS — A rapid development MVC framework. Inspired and similar in style/convention to CakePHP. In very active development.
- pintura — REST-based web framework/middleware stack built for Ajax-style JSON-driven applications
- pomelo – A fast, scalable, distributed game server framework. Also suitable for realtime web.
- Protos — Web Application Framework for Node.js
- QuickWeb — An application server for Node.js
- RailwayJS — An MVC web framework, similar to Ruby on Rails, Express/Connect-compatible. Also see here (en) and here (jp)
- rAppid:js – A declarative JS RIA MVC Framework, supporting XAML, Bindings, Dependency Injection, custom Components
- Sails.js — A realtime MVC framework, based on Express and Socket.io, featuring an ORM with support for Mongo, MySQL, Postgres, Redis, Riak, and others.
- Sayndo — Fast and flexible web server with customized routing and authorization
- Seek — Small Javascript Web framework – mostly for learning purpose
- simpleS — Simple HTTP(S) Server (designed to be All-In-One) with routing, static files service, response compression and WebSocket implementation (version 13, RFC 6455). Good Documentation
- SocketStream — A fast full-stack real-time web framework for single-page apps
- spludo — A full featured web framework. Fully Async + MVC with DI, AOP and Storages. (tutorial + user-guide)
- Stick — A modular JSGI middleware composition layer and application framework
- Tachi – A compact, stand-alone, MVC-based rapid web app development framework.
- Tower — Full Stack Web Framework for Node.js and the Browser, inspired by Ruby on Rails.
- webjs — Simple HTTP / TCP development framework
- Zeppelin — An early stage, low friction cloud development framework
- TrinteJS — An MVC web framework,, Express/Connect-compatible backed by Cross-db ORM CaminteJS and Bootstrap.
Templating
- asyncEJS — Asynchronous implementation of embedded JavaScript
- bake — Templating engine for static files. Supports ejs templates.
- bind-js — a simple templating engine for node.js that smiles back.
- Blade — HTML Template Compiler, inspired by Jade & Haml. Express compliant
- bliss — Template engine inspired by .NET Razor and Play! Scala Templates.
- blue — A streamed template engine. Support for asynchronous loading of partials
- CoffeeKup — Markup as CoffeeScript. Live demo and
<!– broken link –>html2coffeekup - CoffeeMugg — Markup as CoffeeScript. A branch of CoffeeKup, supports closures, requires no compilation, extensible via view-helper libraries, like ActionView.
- combyne.js — A template engine that hopefully works the way you’d expect.
- doT.js — Concise and super fast javascript templates with customizable delimiters, streaming and partials support
- DryKup — CoffeeKup-compatible markup for CoffeeScript. Supports closures and requires no compilation.
- dust — Async, streaming & composable templates for the browser and node
- Eco — Embedded CoffeeScript templates
- ECT — High performance template engine with embedded CoffeeScript syntax (see demo)
- ejs — Light-weight Embedded JavaScript implementation. Express compliant
- fest — Fast and safe template, xml syntax
- fgen — A file generator library to be used to generate project structures, file templates and/or snippets. Templates are based on mustache.
- gaikan – HTML template engine for Node and Express.
- genapp – A customizable generator application using fgen.
- haml-js — Server side html generation using JavaScript. Parses haml templates and renders html.
- haml.js — Faster / more compliant implementation of Haml. Express support
- handlebars.js — The mustache-inspired templating library behind Ember.js
- Jade — Haml-like template engine, fantastic error reporting, easier to read, higher performance. Express compliant
- jazz — A readable template language for node.
- JinJS — A port of Jinja, a Django Template-like templating language to Javascript
- Jinsoku – High performance Javascript template engine inspired by Jade’s power and doT’s speed.
- jm — Another Builder/Markaby/Erectory clone in JavaScript.
- jqtpl — A port of the new jQuery template engine. Express compliant
- jsdom — pure js implementation of the dom level 1 with some browser augmentation. Level 2 and 3 are being considered.
- jshtml — Clean HTML, full JavaScript template engine. Inspired by the razor view engine used in asp.net mvc.
- JSON Template — Minimal but powerful template language with multiple implementations. This is the CommonJS version, tested on Node
- Kiwi — Simple yet powerful template engine based on jQuery Templates syntax, totally asynchronous, and built from the ground up with performance and modularity in mind. Express 3.x compliant.
- Kruntch.js — A simple, lightweight, efficient and non-invasive pure-JavaScript templating engine perfect for powering BOTH the back-end and the front-end.
- less.js — official port of Less to JavaScript/node.
- Liquor — A templating engine minus the code.
- Lite(LiteXML) — A cross platform template engine base on xml/html and javascript expression
- ltxb — Less-Than XML builder templates
- minstache — tiny mustache compiler producing stand-alone functions
- minimal.js — a fast HTML+JSON template engine (both browser and Node.js compatible)
- MinnaHtml.js – An async aware object based HTML template library
- Mu (Mustache) — A Mustache engine that compiles templates into very fast rendering functions. Also streams the
- node-dom — Javascript fast W3C DOM generation.
- node-jst — A pretty high performance template engine implemented with JavaScript. Express compliant
- node-pages — A simple template engine. Cacheable and Trackable.
- node-properties — Simple property reader, externalise your configuration through JSON
- Node-T — A fast django-like templating engine for node.js
- node-template — Fast and light cached templates.
- node-tmpl — basic templating system in node.js based on shorttag
- node.magic_dom — A DSL for building HTML in node.js, similar to Python’s Stan
- nodejs-meta-templates — like php mixed with html, processed twice, 1st static data, 2nd dynamic data.
- normal-template — Normal templates are simple, yet powerful. They are safe, usable in non XML/HTML contexts and portable to any programming language.
- nTPL — Fast & Native extendable template system
- nun — Totally asynchronous non-blocking template engine for node.js
- nunjucks – A jinja2-inspired template system, more up-to-date than jinjs
- Parrot — A lightning fast and lightweight templating engine for Node.js (Just 33 LOC!)
- Pencil — Custom tags/components for Jade. Extend, mixin and inherit.
- Plates — Light-weight, logic-less, DSL-free, templates for all javascript environments!
- PURE — Unobtrusive Rendering Engine. The HTML view and the JS logic remain strictly separated. Works with jsdom.
- QEJS — Asyncronous Embedded JavaScript Templates with Q promises
- raptor — Extensible and optimized HTML templating language that is part of RaptorJS. Works in the browser and on the server.
- Razor Leaf — A template engine with a minimal, concise, and indentation-based syntax (akin to Jade’s).
- scraps — A Space based HTML template language.
- shift.js — Standard interface to the Node.js template engines.
- simpleT — Simple Template Engine with automatic caching, html character escaping, client-side support and clean result
- stencil — Renders asynchronous templates shared by server and browser
- Swig — Fast and powerful Django-style templates for node.js. Express compliant.
- Teddy — An easy-to-read, HTML-based, mostly logic-less DOM templating engine with support for both server-side and client-side templating based on the W3C standard DOMParser and XMLSerializer.
- Templ8 — A fast, lightweight, yet powerful & feature rich client/ server template engine based on Django style syntax
- template.node.js — A light, fast, cached template module for node.
- thunder — A lighting fast template parser for node.js. Express compliant
- tmpl-node — a feature-rich template module for node.js
- tob — Template Observer, allows self-reloading templates with your template engine
- TOFFEE — templates with the elegance of CoffeeScript, by the makers of OkCupid. (Compatible with Express 2, 3, and the browser).
- tpl — a general purpose template cli
- TSN — A Templating System for Node.JS.
- TwigJS — A port of PHP template engine (www.twig-project.org) to Javascript
- weld — unobtrusive. portable. ANTI-TEMPLATING. Weld binds data to markup, and can generate markup based on your data.
- wieldyjs — Template-agnostic markup language that compiles to HTML. Grunt task available as well grunt-wieldyjs
- whiskers — single-file, feature-sparse templating for node, express, and the browser
- xmlb — XML builder templates
- xmlbuilder-js — An xml builder for node.js similar to java-xmlbuilder.
- xmlbuilder.js — An xml builder in JavaScript inspired by Ruby’s Builder, Markaby, and Erector. rendering process.
CSS Engines
- assemble-less — Compile LESS to CSS, with options for creating “bundles”, individual components, and themes.
- carto — Parses MSS templates and renders XML for Mapnik
- ccss — Parses a JavaScript object and renders css.
- csslike — Parses and compiles CSS, taking into account the most recent www-style proposals.
- cssjanus — Converts left-to-right stylesheets to right-to-left, useful for projects that support right-to-left languages like Arabic.
- CSSOM — Parses CSS into CSS Object Model.
- Csster — Write CSS in JS or Coffeescript, with macros, color math, etc.
- Inverter — Flips CSS from LTR to RTL and vice-versa.
- less — Parses a LESS template and renders css.
- sass.js — Parses Sass templates and renders css.
- scss-js — Parses SCSS templates and renders css.
- Stylus-Sprite — Extension for Stylus to generate sprite images
- Stylus — Expressive, dynamic, robust CSS language written by the author of Express, Connect, Jade and more
Content Management Systems
- NBlog – Simple Blog using Express and Mongo
- AkashaCMS – Static website generator, supporting EJS, Markdown and Kernel (asynchronous) template engines, template inheritance, partials, and more
- AE86 — Static website generator. Easy to write custom tag as simple JavaScript function, clean and minimalistic template syntax.
- blacksmith — A static site generator built with Node.js, JSDOM, and Weld.
- bread — A file based static website/blog generator for node that uses markdown files as content providers.
- Calipso — An express based CMS, very much work in progress. <!– broken link –>
- DocPad — is a language agnostic document management system. It’s actively maintained and supported by a growing community. It’s also modular; so easy to extend and use in bigger systems. It already supports lots of markups and pre-processors through available plugins and powers many websites.
- Enfield – Static site / blog generator that aims to be as compatible as possible with Jekyll, only with JS/CoffeeScript plugins instead of Ruby.
- jslardo — A Social CMS, where users are able to register to the application, create their own models (mongoose schemas), views, controllers, websites and pages. Work in progress, keep updated!
- LooseLeaf — Very simple blogging engine based on express, no-DataBase, only JSON.
- MCMS — A Minimal CMS using GitHub flavored Markdown, Mustache templates and the filesystem.
- MuContent — MuContent is a multisite and multilanguage cms in Javascript (Node.js) written with a central proxy for balancing the request on multiple client. Based on MongoDB for storage all content. Themes are based on Foundation framework and mustache.
- Murray CMS — blog platform using express and mongodb.
- NoCR — JCR-inspired Content Repository API for Node.js which maps your content model to a tree of nodes and properties. There is a MongoDB NoCR provider available
- Nodepad — A nice basic web-based notepad.
- NodeWiki — A simple markdown/text file wiki system.
- NudgePad — A tool for building in your browser.
- Punch — A simple tool to generate HTML documents from Mustache templates and content stored in JSON & Markdown format.
- reed — A Markdown-based blogging core backed by Redis and the filesystem.
- nodeportal — Inspired from Liferay, its a portal cms. Currently in heavy development.
- hexo — A fast, simple & powerful blog framework inspired by Jekyll & Octopress.
- Node2Blog — A simple and easy to setup blog template (Express and MongoDB)
- pagen.js — A colorful and highly customizable static website generator.
Class systems
- Bike — Class system to organize namespaces, define, create, extend, mixin, super inheritance and more.
- class-js — Simple, Light-weight OO Class factory
- comb — Library with a built in OO class system, and other features(datastructures, array string and date utilities, etc..).
- ease.js — Classical Object-Oriented framework for JavaScript
- joose — complete modern class system for JavaScript, based on concepts from many programming languages
- mootools.js — MooTools latest server library as npm package for node.js
- N-Ext — Use the power of the Ext.data packages (from the ExtJS framework) in your NodeJS apps. Includes a MongoDB proxy based on node-mongodb-native)
- node-interface — Interface that defines the signature of the methods that must be implemented.
- Sslac — Basic OOP-like support in JavaScript using chaining. Supports extension, interfaces, namespacing, and static objects.
- Structr — Library built to give JavaScript the same look and feel as other popular languages such as Java.
- UberClass — A class framework based on John Resig’s Simple JavaScript inheritance and JavaScriptMVC $.Class.
- UberProto — JavaScript object inheritance sugar: Initialization methods, easy extension, mixins, super methods, proxies
- node-class – OO Class with support for: static, extends, abstract, final, hide properties, serialization etc. and a proper typeof, instanceof. ES5 required.
Parsers
JSON
- Amanda — JSON Schema validator
- benejson — Includes pure JavaScript incremental JSON parser
- json-diff — structured colored diff for JSON files
- json-streams — Streamed JSON parser and stringifier
- JSON.js — easy to use but synchronous, built-in to V8 (no need to @require@)
- json2json — Transform (reformat) JSON from one structure to another using JavaScript
- jsonsp — JSON stream parser for Node.js.
- node-yajl — SAX-like evented JSON stream parser using yajl version 2 (fork of yajl-js)
- props — Parse json or yaml from the beginning of text files.
- yajl-js — SAX-like evented JSON parsing using yajl
- jsvutil – A Node.js utility wrapper for the JSON Schema Validator (JSV).
- js-schema – Simple and intuitive schema validator
XML
- dom-js — A pure JS XML DOM based on sax-js
- libxml-to-js — XML to JavaScript object converter based on libxmljs.
- libxmljs-easy — Work with libmxmljs DOM as with plain Javascript objects, similar to E4X
- libxmljs — Bindings to libxml2
- libxsltjs — Bindings to libxslt for XSLT transformations on XML documents
- node-expat — Fast SAX parser binding to expat
- node-expat — a fork of Fast SAX parser binding to expat, also includes XML to JavaScript object converter
- node-halfstreamxml — sax-js based, filter out nodes (with attributes and child nodes) from an xml stream by name
- node-o3-fastxml — W3C Standards based XML DOM based on fastest xml parser in the world pugiXML
- node-o3-xml — W3C Standard based XML DOM with XPath and namespaces. Built on libxml2
- node-plist — Apple Plist parser for NodeJS. Convert a Plist file or string into a native JS object.
- node-xml — An xml parser for node.js. (The github page for this module is showing some severe performance issues. Not recommended as an “out of the box” solution.)
- node-xml2js — Simple XML to JavaScript object converter.
- sax-js — SAX-like parser in pure JS
- node-xml2object — Simple SAX.js based xml element to object converter.
- xml-events — XML stream parser, based on node-expat. Fires contextual events when it finds a descendant.
- xml-object-stream — Low-memory streaming xml parser for node.js. Returns each node as an object. Uses node-expat
- xml-stream — XML stream parser and editor, based on node-expat.
- xml2json — Simple SAX based XML to JSON parser. It uses node-expat.
- xmldom — A PURE JS W3C Standard based DOMParser and XMLSerializer (DOM Level2 CORE).
- xml-crypto — Xml digital signature and encryption library for Node.js – written in pure javascript.
- xml-digester — Yet another Xml-to-Javascript converter – that can easily be extended (e.g. allows to preserve the sequence of nodes).
- saxpath – Pure-JS XPath evaluator using a SAX parser.
Building desktop GUI applications
- AppJS — SDK on top of Node to build desktop apps (GUI windows) with HTML/CSS/JS.
- node-webkit — SDK for running Node modules (and other Node code) inside WebKit (browser) windows, to build desktop apps with HTML/CSS/JS.
Maps
- node-mapnik — Mapnik bindings for high performance rendering of map tiles.
- node-mapserver — mapserver bindings for rendering mapserver MAP files via node
Video
- node-ffmpeg — FFmpeg module for Node. This library provides a set of functions and utilities to abstract commands-line usage of ffmpeg
- ffmpeg-node — Node.js driver for ffmpeg library
- ffmpeg2theora — Batch encoding with ffmpeg2theora
- navcodec — Node bindings for libavcodec (ffmpeg).
- node-fluent-ffmpeg — Fluent API for ffmpeg (including streaming, thumbnail-generation and custom presets)
- node-handbrake — HandBrakeCLI wrapper to encode an entire folder of videos
- node-video — Create Theora/OGG videos from RGB(A) buffers (and stream them via tag)
- nodeminderjs — Linux video camera security and surveillance solution based on ZoneMinder and developed on top of a node.js stack.
- ytdl — Pure Javascript youtube video downloader.
- youtube-dl — youtube-dl driver for node
JavaScript threads
- Threads A GoGo — Run cpu-bound JavaScript tasks non-blockingly in background kernel threads. With EventEmitter and continuation passing style APIs.
- webworker-threads — Lightweight Web Worker API implementation with native threads
It would be so much cooler to use a node implemented CMS when talking about this information.