forked from nodejs/node-v0.x-archive
-
Notifications
You must be signed in to change notification settings - Fork 1
Modules
sdepold edited this page Aug 6, 2010
·
377 revisions
When you add a framework to this page, have a look at how others have done so, it should be a single item, with a link to the project’s source code, and a short description (one line after formatting has been applied).
If you see a module without a description, feel free to edit the page and add it in, any contributions are appreciated.
When you edit this list, also add your module to http://wiki.github.com/ry/node/library-compatibility so that users will know which versions of Node it was tested with.
- biggie-router — Router for the biggie framework. Inspired by Sinatra and JQuery.
- connect — Robust high performance middleware framework
- journey — liberal JSON-only HTTP request router
- node-router — Simple Sinatra-like http server based on fu.js from the original node-chat demo.
- node.routes.js — A simple url router
- nozzle — web app/service framework
- sherpa — HTTP router/generator with support for regex and parameters
- clutch — no-frills web request router, supporting nested routes, regexp parameters
- dispatch — Regular expression URL dispatcher for Connect
- antinode — A simple static web server
- node-paperboy — A node.js module for delivering static files
- node-static — A simple, rfc 2616-compliant static file server module with built-in caching
- oui — Web service server with great static files support
- static – Static file handler using asynchronous streaming as JSGI middleware
- (fab) — A modular and concise async web framework for node.js
- Nerve — Microframework with simple array-based syntax for defining an app on top of node. (node.JS 0.1.30)
- rowan — A hierarchical microframework of reusable controllers and modular app logic.
- scylla — Create simple one object applications by doubling up method names as URL-matching patterns (node.JS 0.1.102)
- vroom — A simple resource oriented web framework built on top of Node.js (November 2009, node.JS 0.1.16)
- Picard
- simplex (October 2009, node.JS 0.1.14)
- Pipe-Layer — Asynchronous HTTP router.
- Meryl — Minimalistic web framework!
- broke — A porting of the most famous Django Web Framework
- chain — An evented convention for building Node Applications (Stopped Development, for ejsgi)
- coltrane — A try at a higher level library/framework for node.js web development (July 2009, node.JS 0.1.1)
- djangode — A framework that borrows some useful concepts from Django. (March 2010, node.JS 0.1.30)
- Express — A robust feature rich web development framework inspired by Sinatra
- Grasshopper — A simple MVC framework for REST-ful applications, with integrated dependency injection.
- Geddy — A hackable Web-app development framework similar to Merb/Rails/Pylons/Django
- jimi — A framework for writing modular web applications in node.js (tutorial)
- js.io — Javascript Networking Library for building real-time web applications. Also see JS.io
- josi — An MVC web framework that’s easy to pick up but doesn’t get in the way. Also see here.
- nodemachine — A port of WebMachine to Node.js
- pintura — REST-based web framework/middleware stack built for Ajax-style JSON-driven applications.
- cascade — Sequentially attempts multiple middleware apps (JSGI).
- compress – Gzip compresses (using node-compress) the response when appropriate based on request headers. (JSGI)
- media – Performs content type negotiation (per RFC2616) delegating to appropriate media handler. (JSGI)
- csrf – Checks HTTP request for possible cross-site request forgery, flags dangerous requests. (JSGI)
- xsite – Handles JSONP, window.name, and cross-origin XHR (CORS). (JSGI)
- rewriter – Rewrites defined paths to other paths. (JSGI)
- static – Static file handler using asynchronous streaming. (JSGI)
- error – Catches uncaught errors and converts to appropriate HTTP error responses. (JSGI)
- conditional – Handles conditional HTTP requests (If-Modified-Since, etc.) (JSGI)
- http-params – Converts HTTP parameters http- to headers. (JSGI)
- auth – Handles Authentication (HTTP and cookie based). (JSGI)
- commonlogger – A logger of HTTP requests. (JSGI)
- contentlength – Sets Content-Length header. (JSGI)
- head – Handles HEAD requests (stripping body). (JSGI)
- redirect – Redirects to other URLs (JSGI)
- urlmap – Maps to different apps by path/URL (JSGI)
- extension – Transforms .extension to a RESTful Accept header (JSGI)
- transporter – Share modules with browser, works RequireJS and Yabble (JSGI)
- routes – Simple RegExp based router (JSGI)
- connect-rpx – Use RPX with Node.js and Connect (Connect)
- connect-assetmanager – Asset manager for Connect for handling CSS/JS files (Connect)
- session – Session manager with pluggable storage handling (JSGI)
- dispatch — Regular expression URL dispatcher (Connect)
- quip — Chainable HTTP response API (Connect)
- cookie-sessions — Secure cookie-based session store (Connect)
- Connect — Middleware framework packed with high quality / performance middleware
- node-elf-logger — Configurable HTTP logging library following the W3C Extended Log File Format specification
- JSGI-Node — Asynchronous JSGI 0.3 Adapter for Node, for standards-based middleware
- node-mime — Utility module for mime-type lookups
- node-cgi — CGI adapter kludge (replaces Node’s fast and famous event-based HTTP library)
- node.ly — A simple URL shortener
- multi-node — Launch multiple node processes for HTTP servers
- awesome — a Redis clone in node.js
- cradle — a high-level, caching, CouchDB client
- JSLINQ — Clean and simple port of Microsoft’s LINQ to node.js (and the browser)
- keys — Unified interface for key/value store clients
- node-couch — a CouchDB connector
- node-couchdb — A full API implementation
- node-couchdb-min — Light-weight client with low level of abstraction and connection pooling.
- node-dirty — A key value store for node.js that is simple, fast & dirty.
- node-fleet — a FleetDB Client
- node-memcache — a memcache client base on libmemcached
- node-mongodb — Basic MongoDB client implementation in JS/C++
- node-mongodb-native — A pure javascript driver for MongoDB
- mongoose — Mongoose is a javascript library that makes working with MongoDB a breeze.
- node-poormansmysql — Asynchronous MySQL driver for node.js using the mysql command-line tool
- node-mysql — Pure Javascript MySQL async driver
- node-mysql-native — Yet another pure JS async driver. Pipelining, prepared statements.
- node-mysql-libmysqlclient — MySQL synchronous bindings based on libmysqlclient
- node-sqlite — Bindings for SQLite3. Interface conforms to the HTML5 Web SQL API.
- NoSQLite – A zero-config SQLite wrapper written in CoffeeScript
- node-sqlite — Fast asynchronous driver: New evented Node.js look, same great SQLite3 taste
- node-tyrant — An implementation of the Tokyo Tyrant network protocol for the Node.js
- node.dbslayer.js – Interface to DBSlayer (MySQL)
- node_postgres — Beginning of bindings to libpg
- noodb — A simple and small file backed javascript key-value store
- persistence — Multi-backend database/nosql system. Backends: Sqlite3, Postgres and Memory.
- persistence.js — An object-relational mapper (ORM) for node. Backends: MySQL.
- perstore — JavaScript persistence/object store with pluggable storage based on the W3C DB API
- postgres-js — Postgres protocol implemented in pure JS
- redis-node-client — Redis Client by Fictorial
- redis2json — Easily loads data from Redis into structured JS object
- sequelize — An easy-to-use MySQL object-relationship-mapper for node.js
- nohm — Redis object relational mapper (ORM)
- riak-js — Riak Javascript client (works on node v0.1.30+)
- node-tokyocabinet — Tokyo Cabinet binding
- node-migrate — Migrate – A database agnostic migration system for Node.js
- nodejs-meta-templates — like php mixed with html, processed twice, 1st static data, 2nd dynamic data.
- asyncEJS — Asynchronous implementation of embedded JavaScript
- ejs — Light-weight ejs implementation compliant with the Express view system
- haml.js — Faster / more compliant implementation of Haml
- haml-js — Server side html generation using javascript. Parses haml templates and renders html.
- Jade — Haml-like template engine, fantastic error reporting, easier to read, higher performance
- jazz — A readable template language for node.
- JSON Template — Minimal but powerful template language with multiple implementations. This is the CommonJS version, tested on Node
- xmlbuilder.js — An xml builder in Javascript inspired by Ruby’s Builder, Markaby, and Erector.
- jm — Another Builder/Markaby/Erectory clone in javascript.
- less.js — official port of Less to javascript/node.
- Mu — A Mustache engine that compiles templates into very fast rendering functions. Also streams the rendering process.
- node-template — Fast and light cached templates.
- sass.js — Parses Sass templates and renders css.
- template.node.js — A light, fast, cached template module for node.
- tmpl-node — a feature-rich template module for node.js
- jsdom — pure js implementation of the dom level 1 with some browser augmentation. Level 2 and 3 are being considered.
- bind-js — a simple templating engine for node.js that smiles back.
- normal-template — Normal templates are simple, yet powerful. They are safe, usable in non XML/HTML contexts and portable to any programming language.
- nun — Totally asynchronous non-blocking template engine for node.js
- node.magic_dom — A DSL for building HTML in node.js, similar to Python’s Stan
- stencil — Renders asynchronous templates shared by server and browser
- strobe-templates — An asynchronous templating engine with syntax like Django’s
- nodejs-autorestart — It is a way to watch all .js files if they have been changed and to restart nodejs. It allows easy development and stable production.
- node-jake — JavaScript build tool similar to Make or Rake.
- kiwi — Feature rich, fast, node.js package management system — server sponsored by Slicehost (no longer in active development)
- npm — A node package manager that uses CommonJS-compatible package.json files, written in asynchronous javascript.
- mode — Distributed Node module repository. Uses a github repository to contain info about installable modules.
- seed — Universal package manager for CommonJS. Includes command line tools and async server
- nodules — Async module loader with dep resolution/downloading and module reloading w/o server restart
- node-DJs – Restart a server after each change in main script and dependencies
- hashlib — Fast hashing module, written in C/C++, supports: md4, md5, md6, sha, sha1, sha256, sha512
- brainfucker’s node-base64 — C++ base64 lib
- pkrumins’s node-base64 — C++ base64 lib that actually works
- node.bcrypt.js — C/C++ bcrypt lib
- node-crypto — OpenSSL based Hashing, Signing and Verifying
- node-oauth — OAuth client (1 and 2)
- sasljs — Gsasl wrapper to performs server-side SASL authentication.
- node-httpclient — Node HTTP Client (gzip, https, cookies etc.)
- node-protocol — A framework for implementing protocols.
- node-smtp — Implementation of the SMTP protocol in Node
- NodeFTPd — Node FTP Server
- node-ftpclient — Node FTP Client
- xmpp.js — Library for implementing XMPP server components with Node
- node-http-digest — Node HTTP Client with support for Digest Authentication
- request — Simple HTTP client library.
- node-xmpp — Node XMPP library
- node-snpp — Node SNPP server library
- node_mdns — mdns/zeroconf/bonjour service discovery add-on
- bertrpc
- jsonrpc
- xmlrpc-c — Simple XMLRPC Client
- dnode — asynchronous remote method invocation among node.js processes and the browser
- node-jsonrpc — Another JSON-RPC server
- IPCNode — Asynchronous RPC library based on node.js Stream object, with support for circular objects, and explicit reference counting to ensure proper garbage collection.
- Comet LongPollingBuffer — A Library to simplify the server side of Comet AJAX long polling
- Faye — Bayeux protocol Comet client and server for Node.js and Rack
- Socket.io — WebSocket-compatible server and client with fallback for legacy browsers
- node-XMLHttpRequest
- node.websocket.js — WebSocket-compatible server.
- node.ws.js — A basic Web Socket server with interface similar to tcp.createServer(…)
- nodejs-http-websocket — A websocket server on top of the http server.
- node-websocket-server — Another websocket server on top of the http server.
- Restler — Simplified REST client for Node.js
- node-websocket-client — An HTML5 Web Socket client.
- tunguska — A comet publish/subscribe distributed hub (runs across multiple node instances).
- grappler — A minimalistic server for handling “comet” connections that supports a variety of connection methods.
- sinon — JavaScript test spies, stubs and mocks for Node.js and the browser
- espionage — A mock/stub framework using the test spy pattern.
- expresso — TDD framework by the author of JSpec
- exemplor.js — A port of exemplor with Node goodness.
- jasmine-node — integration with Pivotal’s Jasmine Spec framework
- jspec — Feature Rich BDD Testing Framework
- minitest.js — Light-weight & simple testing framework designed specially for testing asynchronous code.
- mjsunit.runner — Command line mjsunit runner which provides an easy way to hook into mjsunit and start running tests immediately.
- node-assert-extras — Additional high level asserts
- node-async-testing — Simple testing (hopefully)
- node-stories — Given/When/Then integration awesomeness for Node.
- nodeunit — Quick and easy unit testing, based on a simplified version of the QUnit API
- ntest — another unit testing framework
- spectacular — for testing
- Speks — A specification framework for your node-code
- Vows — asynchronous behaviour-driven development for node.js
- Willful — a simple spec’ing library for Node.
- Gently — A node.js module that helps with mocking and behavior verification.
- patr — Promise-based asynchronous test runner: lightweight & simple.
- paynode — wrappers for various payment gateway APIs.
- bdog-node — haXe wrappers for node.
- bdog-redis — haXe wrappers for Fictorial’s redis client
- bdog-gtk — haXe wrappers for node and Gtk-Server
- bdog-pstore — haXe object server using bdog-node and bdog-redis
- bdog-mongo — haXe wrappers for native-mongo driver
- SQLiteHaxeWrapper — haXe wrappers for Orlandov’s SQLite high level driver
- libxmljs — Bindings to libxml2
- node-xml — An xml parser for node.js
- node-xml2object — Converts XML to a JS object, using the node-xml module
- sax-js — SAX-like parser in pure JS
- node-expat — Fast SAX parser binding to expat
- node-xml2js — Simple XML to JavaScript object converter.
- optparse-js — Option Parser in JS
- trollopjs — Another option parser
- js-opts — Another simple command line option parser
- canopy — PEG parser compiler for JavaScript
- jison — A parser generator written in JavaScript; similar to Bison for C
- PEG.js — Parser Generator for JavaScript
- inimino’s PEG — A PEG Packrat Parser Generator for JavaScript
- jparse — A parser combinator for javascript based on Packrat parsers and Parsing expression grammars
- OMeta Javascript compiler
- node-discount — C markdown parser “discount” bindings
- node-csv — Efficient Evented CSV Parsing.
- ya-csv — Evented CSV parser and writer with configurable separator, escape and quote characters
- querystring.node.js — Robust query string parsing for node.
- yajl-js — SAX-like evented JSON parsing using yajl
- node-htmlparser — Forgiving HTML Parser in JS for both Node and Browsers
- node-useragent — User agent string parser with accurate browser versioning and grouping
- node-jspack — JavaScript library to pack ints, floats, etc. to octet arrays representing C data structures
- node-msgpack — Bindings for MessagePack, space-efficient object serialization library
- node-rfb — Parse the RFB protocol used by VNC
- node-bufferlist — Create linked lists of buffers and asynchronously parse binary data from these lists
- node-netstring — Read and write netstrings
- apricot — Hpricot inspired clone, JSDom with Sizzle Selector engine and XUI for HTML augmentation
- cfdump.js — a prettier way to dump your objects to a browser
- colours.js — Give your CLI programs some colours!
- colored.js — Colorize terminal output.
- consolelog.js — stylized console logging for node.js
- Eclipse debugger plugin — Using Eclipse as Node Applications Debugger
- eyes.js — A better, customizable value inspector for node.js
- http-console — A simple & intuitive HTTP console for testing APIs.
- log4js-node — a port of log4js framework for node.js
- node-streamlogger — Extensively customizable logging, with support for rotation
- node_debug — HTTP based console and object explorer
- ndb — traditional command line debugger
- node-profiler — access the V8 profiler from node.js
- node-compress — streaming compression / gzip library
- node-compress by egorich239 — asynchronous streaming (de)compression library with gzip and bzip2 support, originally forked from waveto’s
- node-gd — GD graphic library bindings
- magickal-node — GraphicsMagick wrapper for node.js
- node-imagemagick — ImageMagick module
- node-png — Convert an RGB or RGBA buffer to PNG fast
- node-gif — Convert an RGB or RGBA buffer to GIF fast
- node-jpeg — Convert an RGBA or RGB buffer to JPEG fast
- node-ogl — OpenGL bindings
- node-webgl — WebGL emulation
- gm — GraphicsMagick for node
- node-video — Create Theora/OGG videos from RGB buffers (and stream them via <video> tag)
- node-image — Unifies node-png, node-gif, node-jpeg
- behaviors — A simple way to check a module’s exports, useful for 3rd party plugins and extensions
- box2dnode — Port of the box2d physics simulation library
- class.js — High performance and lightweight class implementation (10-ish SLOC)
- cookie-node — signed cookie functionality for node.js
- node-cookiejar — repetitive use cookie jar construction / cookie functionality
- daemon.node — Unix/Linux Daemons with node.js
- dust — OO way to fill your database with not totally random content
- dox — Documentation generator using JSdoc and markdown comments
- evented-twitter — asynchronous twitter client, supports streaming api
- express-chat — A chat application demo for testing node.js + MongoDB scalability
- ext — High quality / performance JavaScript extensions specifically for node.js
- flickrnode — A library to enable use of the flickr api (not as complete as node-flickr, but supports auth)
- Faker.js — generate massive amounts of fake data in Node.js and the browser
- flow-js — Continuation-esque contruct for expressing multi-step asynchronous logic
- hub.js — in-memory and in progress PubSubHubBub server
- IRC-js — An IRC library for node.js
- Jefe — Jefe is a safe sandbox for running user scripts in Node.js
- Jerk — A fun little IRC bot library for node.js.
- koala — Code syntax highlighting library
- lepote — XMPP bot
- limestone — Sphinx search server connector
- nDistro — Node distribution toolkit. Create and install distributions in seconds without GIT or npm
- node-discount — C markdown parser “discount” bindings
- node-amf — AMF library and web service gateway for Flash remoting
- node-amqp — AMQP client
- node-amqp — Basic AMQP client
- node-asterisk — Listen to events in realtime and issue commands on Asterisk servers
- node-bittorrent — A library for handling the bittorrent protocol
- node-chat — A simple web-based chat server
- node-continuables — A library making dealing with asynchronous code easier
- node-control — System admin and code deployment via ssh (similar to Capistrano/Vlad)
- node-cron — Schedule callbacks with cron syntax
- node-email — A simple wrapper around sendmail
- node-Daemon — Restart node script after each change in main script or its dependencies
- node-iconv — iconv bindings, character encoding conversion made easy.
- node_mailer — send emails from node.js to an smtp server, simple as cake
- node-flickr — A simple library to enable easy use of the flickr api
- node-geoip — geoip city lookup module (uses libgeoip)
- node-github — A wrapper for the GitHub API
- node-growl — unobtrusive notification system (growlnotify “bindings”)
- node-logger — Simple logging like Ruby’s logger.rb and console.log
- node-hammer — Simple load testing tool similar to AB but with less features.
- node-maxmind — maxmind/geoip module (using libgeoip)
- node-parallel — Create tasks in node.js that run in parallel, or sequences that run tasks one after another.
- node_pcap — Network packet capture and analysis using libpcap
- node-promise — Robust promises for node.js, includes promise utilities and promise-based I/O library
- node-prowl — A module that allows you to send push notifications to your iPhone through the Prowl API
- node-resque — Resque redis-backed job queue workers in node.js
- node-sandbox — A rudimentary javascript sandbox for use with node.js
- node-s3 — App for basic Amazon Web Services S3 administration (upload files, bucket admin, etc.)
- node.Amazon-S3 — S3 implementation with Md5 signing, upload/download progress% events, streaming, large file support.
- node-solr — Solr module for Node
- nodestalker — A beanstalkd client for node
- node-stomp — A basic STOMP client.
- node-syslog — Allows sending messages to syslog.
- node-taglib — Beginnings of bindings to taglib
- node-twiml — Easy TwiML creation in node.js
- node-ugly — Allows to run PHP code from within node.js
- node-uneval — Adds uneval() support to node.js
- node-worker — An implementation of the WebWorker API for node.js
- node-webworker — An implementation of the HTML5 Web Worker API.
- node-yui3 — Use the YUI 3 JS library from node.js
- node-yql — A YQL (Yahoo Query Language) module for Node.js
- nshtools — a high level shell scripting library for file and operating system chores
- soda.js — Asynchonous JavaScript module loader for client-side and Node.js
- Step — Tool for grouping and chaining asynchronous callbacks, based on flow-js
- async — Comprehensive async map/reduce and flow control (parallel, series, waterfall, auto…) module that works in node and the browser
- Task.node Simple task manager similar to Rake, Scons and others.
- tasks.js Tasks for Node (like Rake!) with a very JavaScripty API.
- temp — Temporary files and directories
- tweetstream — Stream like API for twitter’s HTTP streaming interface.
- TwitScript — A port of Twython to Node.js (Twitter API Library)
- user-agent — user agent string parser
- uuid — Efficient bulk UUID generation and caching via command-line OSSP uuid.
- uuid-2 — Fork of above, works on OS X and fixes bug.
- uuidjs — Simple UUID generation binding to libuuid.
- vargs — practical variable argument handling.
- Wheres Waldo — track locations of users in redis
- Wrench-JS — Useful Node.js operations (recursive directory operations, etc)
- yaml — CommonJS YAML parser
- node-ncurses — An ncurses binding for node.js
- node-terminal — A simple terminal module for ansi control codes.
- swirl-node — A simple EC2 client
- node-hoptoad-notifier — Report exceptions to Hoptoad.
- html filtre – A proxy that filters Html requests and give you an opportunity to add custom content into the response
- pokenode – A push notification utility to make HTML/CSS development faster.
- Set implementation – built on the object hash
- forms — An easy way to create, parse and validate forms
- promised-io — Cross-platform promise-based I/O provides composibility on evented I/O.
- node-inotify — Bindings to GNU/Linux Inotify API
- sneaker — Helps you observing objects if any attribute changes
- node-proxy — Object Overloading and catch-all property interceptors using Harmony Proxies
- node-stringprep — Binding to ICU StringPrep profiles
- commonjs-utils — JSON Schema, AOP, XML-RPC, lazy arrays, and other utilities
- datatypes-js — Byte encoding/decoding for typical datatypes in JS.
- Dojo Toolkit — The Dojo library for Node
- email.js — Email generation and parsing in Javascript.
- match-js — Simple pattern matching (functional style) in JS.
- qxoo — port of the qooxdoo OO system to commonJS
- underscore — Unobtrusive functional programming utility library.
- abbrev-js — Like Ruby’s Abbrev module.
- wu.js — A lazy, functional Javascript library that ain’t nuthin’ ta f*ck wit.
- inflection — A port of the Rails/ActiveSupport inflector to JavaScript
- schema.js — Modular data schema validation and adaptation according to JSON Schema for JavaScript (CommonJS)