title: buildpack independent assets managment on heroku
body: <p>I'm developing a clojure app to be deployed on heroku and I want my javascript dependencies managment (which version of jquery to use..)  and my asset compilation tasks (concat css and minify, upload assets to s3, ...) be automated.</p>
  
  <p>While developing node.js apps on heroku it was pretty easy to use <a href="http://bower.io/" rel="nofollow">bower</a> and <a href="http://gruntjs.com/" rel="nofollow">gruntjs</a>.</p>
  
  <p>Unfortunately node.js and npm are not installed with the clojure buildpack.</p>
  
  <p>I know that I can modify a buildpack to include arbitrary tools.
  But I really don't feel like to fork a buildpack in order to add simple dependency managment to my app.
  I don't want to have the overhead of feeling obliated to update my forked when a new version of any of the used tools is released.</p>
  
  <p>What is your recommenced way to update your dependencies without putting them into the git repo and how do you compile your static assets?</p>
  
  <p>Solutions that came to my mind</p>
  
  <ul>
  <li>using rails (instead of clojure) with asset pipeline ;) (just joking this can't be a solution)</li>
  <li>use node (instead of clojure) with bower and grunt (can be defined in package.json as a dependency)</li>
  <li>put the dependencies into the git repo and manually compile and minify the assets (prone to error, i'd like to automate this and do not want to keep big dependencies in the repo for no apparent reason)</li>
  <li>write a custom shell script or a makefile to download the dependencies and use ruby and gem to download and use css minify (should work, but could break, tools like bower and grunt are made for exactly this task and should be more stable than rolling your own script)</li>
  <li>find a web dependency manager for clojure (i didn't find one, yet)</li>
  <li>find a web dependency mangager for java (something like <a href="https://code.google.com/p/wro4j/" rel="nofollow">wro4j</a></li>
  <li>create or use an existing one click installation for grunt and bower that is independent of the buildpack</li>
  </ul>
  
  <p>What are you guys recommencing?
  What would be the most stable and convenient method to solve this issue nearly each web app seems to have.</p>