Data.js, context-blender, JavaScript Timeline, JSBeautify for Chrome, Mappa
Data.js
Data.js (GitHub: michael / data, License) by Michael Aufreiter is a data manipulation and persistence framework for JavaScript that works in the browser and Node.
It comes with Data.CouchAdapter for saving data to CouchDB, and uses Underscore so the enumeration-based API should be immediately familiar to you if you’re already using Underscore. For example:
var selectedItems = items.select(function(value, key, index) {
return value >= 10000000;
}).toJSON();
Everything in Data.js is based on these generic data formats:
Data.Hash: A sortable hash data structureData.Graph: A data abstraction for linked dataData.Collection: Tabular data (uses a Data.Graph internally)
What interests me about this project is the API really suits JavaScript, and it works in both browsers and server-side code. The fact the persistence layer is configurable makes me hope other databases will be supported.
context-blender
context-blender (License) by Gavin Kistner attempts to implement Photoshop’s RGBA compositing blend modes in JavaScript using Canvas. It’s been put in use by GitHub for their Difference image view mode, which you can read more about in Behold: Image view modes.
JavaScript Timeline

This JavaScript timeline by Michael Richardson presents an interactive view of the main events in JavaScript’s history. You can read more about this subject in my History of JavaScript series.
JSBeautify for Chrome
JSBeautify for Chrome by Tom R makes it easy to reformat minified JavaScript in Chrome. Install it:
Then view something like jquery.min.js. It’ll display a message saying “This looks like a JavaScript file. Click this bar to format it.” Handy!
Mappa
Mappa by Oliver Caldwell is a little library for creating aliases to functions, making it easy to map function names and create customised APIs. The example given by the author is with the JSON object:
Mappa.addMap('encodeJSON', JSON.stringify);
This will work in Node as well as browsers.