Yesterday I made public a little project I’ve been working on lately: Brewer.js. It’s basically a asset manager. If you’ve been into this sort of things, you know I’m not the first to have that idea. What I’m trying to reach with this project is this :
- A one-stop tool to kick start any project, no matter what external javascript/css libraries you need. Brewer.js would ship with common templates (bootstrap, jquery only, etc.) and you could roll/publish your own.
- A streamlined way to keep track of dependencies (jQuery, Backbone.js, etc.), keep them up-to-date. e.g. you barely specify you need the latest version of libraries X, Y and Z, and Brewer pulls them and keeps them up-to-date for you.
- A ”forget-about-it” way to package all scripts/stylesheets into neatly optimized files, even if the sources are a mix of javascript, (iced) coffee-script, tamejs, etc. Have them reference each other as if they were meant to live together all along.
- Manage templates so they are as easily accessible from client-side logic as they are server-side. Bundle them together to reduce bandwidth usage.
The project is currently 0.3.2. Points 1 and 3 are implemented and ready-to-use for javascript, css, coffeescript, stylus and LESS. A branch was created to implement 2. After that, I plan on expanding language support to Iced Coffeescript, Coco and Move for javascript and SASS, Haml for CSS. Then, I’ll branch out development for 4, namely template processing (which should be a good fit with a static site generator).
Feel free to contribute to the project hosted on github. Fork the project and post issues! Oh, and a complete annotated and nicely formatted (using docco) version of all source code is available here.