Collections of Frameworks/Libraries


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
  • blueprintBlueprint 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 html2coffeekup<!– broken link –>
  • 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
  • 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

 

One thought on “Collections of Frameworks/Libraries

Leave a reply to Michael Sablatura Cancel reply