stick

JSGI based webapp framework

npm install stick
2 downloads in the last week
40 downloads in the last month

Stick

Stick is a modular JSGI middleware composition layer and application framework.

It was originally made for RingoJS, but this fork allows it to also run on Common Node (a synchronous CommonJS compatibility layer for Node.js using node-fibers).

If you have any questions about Stick or its use in conjunction with mongo-sync and other libraries built on top of Common Node, please post them to the Common Node mailing list.

Overview

Stick provides an Application object that can be used to compose web applications out of JSGI middleware components. Middleware can in turn define methods or properties on the application object to make itself configurable to the outside world.

Currently Stick comes with the following middleware modules:

  • basicauth - basic HTTP authentication
  • continuation - generator-based async requests
  • error - generating error pages
  • etag - ETag based conditional GET
  • gzip - GZip content encoding
  • method - HTTP method overriding
  • mount - mounting other applications
  • notfound - generating 404 pages
  • params - form data parsing
  • profiler - JavaScript profiling
  • render - mustache.js templates (mustache shold be installed separately with npm install mustache)
  • requestlog - collecting per-request log messages
  • route - Sinatra-like request routing
  • session - session support
  • static - serving static files
  • upload - handling file uploads

    Check out the demo applications and documentation to learn more.

Running

Use npm to to install Stick:

$ npm install stick

To start the stick demo application run the common-node (Common Node is installed via npm install common-node -g) command with the demo.js script in the stick directory:

$ common-node examples/demo.js

Then point your browser to http://localhost:8080/.

License

Stick is distributed under the MIT license.

npm loves you