This is a connect [1] session store using supermarket [2]. It was written by Peteris Krumins (peter@catonmat.net). His blog is at http://www.catonmat.net -- good coders code, great reuse. [1] http://github.com/senchalabs/connect [2] http://github.com/pkrumins/node-supermarket ------------------------------------------------------------------------------ Supermarket-cart can be used to store connect's sessions in supermarket database. Here is a full application that starts a server on port 9005. When you first visit the root page /, it sets session name to be 'pkrumins'. Then when you visit /whoami, it will tell your name: var Cart = require('cart'); var connect = require('connect'); var server = connect.createServer(); server.use(connect.cookieDecoder()); server.use(connect.bodyDecoder()); server.use(connect.session({ store : new Cart({ dbFile : '/tmp/sessions.db' }), secret : 'your secret' })); server.use( connect.router(function (app) { app.get('/', function (req, res) { req.session.name = 'pkrumins'; res.writeHead(200, { 'Content-Type' : 'text/html' }); res.end(); }); app.get('/whoami', function (req, res) { res.writeHead(200, { 'Content-Type' : 'text/html' }); res.end(req.session.name); }); }) ); server.listen(9005); ------------------------------------------------------------------------------ Have fun storing sessions in a supermarket cart! Sincerely, Peteris Krumins http://www.catonmat.net