Link

Underscore-CLI is:

  • FLEXIBLE - THE “swiss-army-knife” tool for processing JSON data - can be used as a simple pretty-printer, or as a full-powered Javascript command-line
  • POWERFUL - Exposes the full power and functionality of underscore.js (plus underscore.string, json:select, and CoffeeScript)
  • SIMPLE - Makes it simple to write JS one-liners similar to using “perl -pe”
  • CHAINED - Multiple command invokations can be chained together to create a data processing pipeline
  • MULTI-FORMAT - Rich support for input / output formats - pretty-printing, strict JSON, etc. See Data Formats
  • DOCUMENTED - Excellent command-line documentation with multiple examples for every command

(Source: onethingwell.org)

Link

Chaplin

An Application Architecture Using Backbone.js

Chaplin is an architecture for JavaScript applications using the Backbone.js library. The code is derived from moviepilot.com, a large single-page application.

Key Features

  • CoffeeScript class hierarchies as well as object composition
  • Module encapsulation and lazy-loading using AMD modules
  • Cross-module communication using the Mediator and Publish/Subscribe patterns
  • Controllers for managing individual UI views
  • Rails-style routes which map URLs to controller actions
  • A route dispatcher and a top-level view manager
  • Extended model, view and collection classes to avoid repetition and enforce conventions
  • Strict memory management and object disposal
  • A collection view for easy and intelligent list rendering
Link

It is a fork of Coco which is in turn derived from CoffeeScript. Like those two it has a relatively straightforward mapping to JavaScript. LiveScript is Coco but much more compatible with CoffeeScript, more functional, and more feature rich. LiveScript aims for increased expressiveness and code beauty.

While adding features to assist in functional style programming, LiveScript also deeply supports imperative and object oriented programming, and has an optional class system with inheritance, calls to super, and more.

Link

This essay walks through my experience adding garbage collection to Cafe au Life, an implementation of John Conway’s Game of Life that achieves stunning performance by aggressively caching both data and computations.

Cafe au Life is written in a pseudo-literate style that leans heavily on aspect-oriented software development to separate concerns and especially to produce a series of successive “reveals” of functionality. This essay walks through some of the refactoring required to make it possible to implement garbage collection through class extension and method advice, paying particular attention to memoization and abstracting functional composition.

Link

Built on top of Node’s Connect and Express, modeled after Ruby on Rails. Built for the client and server from the ground up.

Default Development Stack
MongoDB (database)
Redis (background jobs)
CoffeeScript
Stylus
Jasmine (tests)
jQuery

Link

This essay walks through my experience adding garbage collection to Cafe au Life, an implementation of John Conway’s Game of Life that achieves stunning performance by aggressively caching both data and computations.

Cafe au Life is written in a pseudo-literate style that leans heavily on aspect-oriented software development to separate concerns and especially to produce a series of successive “reveals” of functionality. This essay walks through some of the refactoring required to make it possible to implement garbage collection through class extension and method advice, paying particular attention to memoization and abstracting functional composition.

Link

ShareJS is an Operational Transform library for NodeJS & browsers. It lets you easily do live concurrent editing in your app.

Link
Link

Built on top of Node’s Connect and Express, modeled after Ruby on Rails. Built for the client and server from the ground up.

Default Development Stack
MongoDB (database)
Redis (background jobs)
CoffeeScript
Stylus
Jasmine (tests)
jQuery

Link
Link

This library adds “before”, “after”, “around”, and “guard” method combinations to underscore.js projects, in much the same style as the Common Lisp Object System or Ruby on Rails controllers. With method combinations, you can easily separate concerns.

Link