Skip to content
This repository

Connect is a middleware layer for Node.js

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 docs
Octocat-spinner-32 examples
Octocat-spinner-32 lib
Octocat-spinner-32 support
Octocat-spinner-32 test
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 .npmignore
Octocat-spinner-32 LICENSE License March 01, 2011
Octocat-spinner-32 Makefile
Octocat-spinner-32 index.js
Octocat-spinner-32 package.json


Connect is an extensible HTTP server framework for node, providing high performance "plugins" known as middleware.

Connect is bundled with over 14 commonly used middleware, including a logger, session support, cookie parser, and more. Be sure to view the 1.0 documentation.

1.0 Migration Guide

Connect 1.0 is a near-complete rewrite of Connect, with this comes some changes, including some (minor) API changes, and removal of a few middleware, which you are welcome to rip out of previous versions as third-party middleware.

Middleware Removed

  • cache cached everything. This is less than ideal for dynamic apps, rendering this middleware relatively useless.
  • conditionalGet blanketed all requests, requiring the entire response to be computed before a response could be concluded. This is extremely wasteful.
  • staticGzip useless. gzip / ship assets to a CDN
  • gzip buggy
  • lint lame

Middleware Renamed

  • staticProvider is now static
  • bodyDecoder is now bodyParser
  • cookieDecoder is now cookieParser

Middleware Added


The connect.createServer() method is now optional, and equivalent to connect(). For example:

    , connect.static(__dirname)

is the same as:

    , connect.static(__dirname)

When an options object is passed as the first argument it is assumed to be an https server:

  connect({ options here }
    , connect.static(__dirname)


The charset is not longer forced via mime.type() resolution, now you must explicitly assign this via res.charset = 'utf8' etc.

Running Tests


$ git submodule update --init


$ make test


Below is the output from git-summary.

  project: connect
  commits: 1408
  files  : 100
    1184    Tj Holowaychuk
    191 Tim Caswell
      8 Astro
      5 Nathan Rajlich
      4 Jakub Nešetřil
      2 Aaron Heckmann
      2 Fabian Jakobs
      2 Jacques Crocker
      2 James Campos
      1 Jakub Nesetril
      1 Andreas Lind Petersen
      1 Joshua Peek
      1 Jxck
      1 Gregory McWhirter
      1 Eran Hammer-Lahav
      1 Bart Teeuwisse
      1 Guillermo Rauch

Node Compatibility

Connect < 1.0.0 is compatible with node 0.2.x

Connect >= 1.0.0 is compatible with node 0.4.x


View the LICENSE file.

Something went wrong with that request. Please try again.