mozilla/fireplace — pull request #46 by cvan (2013-02-27 08:42:02+00:00)
Title: Turn all of our LESS CSS to Stylus

Turns out Stylus is amazing.

SASS requires Ruby.
Stylus requires node.js (just like LESS).

So here's what convinced me:

lessc hearth/media/css/marketplace.less 40.61s user 0.97s system 100% cpu 41.402 total
stylus hearth/media/css/marketplace.styl 0.90s user 0.03s system 100% cpu 0.928 total

Not impressed?

* [mixins with default values](http://learnboost.github.com/stylus/docs/mixins.html)
* [keyword arguments](http://learnboost.github.com/stylus/docs/kwargs.html)
* [rest... arguments](http://learnboost.github.com/stylus/docs/vargs.html)
* [automatic vendor prefixing (if we want)](http://learnboost.github.com/stylus/docs/keyframes.html)
* so much more…

Oh, and did I mention [automatic recompilation out of the box](http://learnboost.github.com/stylus/docs/middleware.html)?

Coming from LESS?
* Nesting format stays the same. Still use curly braces.
* For variables instead of `@` use `$`.
* For mixins instead of `.mixin()` write `mixin()`.
* Instead of overloading the mixins for optional arguments, use default argument values.

Likely, we'll want to do this for all of our new zamboni styles first and port them over.