In my previous post I’ve pointed out some tools which make your live with Chef much easier. Among these, Berkshelf helps with managing cookbooks and their dependencies. Depending on your workflows these can be very straight forward or grow very complex.
I had some free time and thought that visualizing these dependencies as graphs could be a fun weekend project. You can test out the results on berksgraph.tolleiv.de yourself. Just upload your Berksfile.lock and you’ll see the result.
Esentially I’ve used Node.Js transform streams   to parse the Berksfile.lock and generate D3 graph data. The graph data is transformed into a nice graph with cola.js. In order to provide a nice interface for the application, everything was wrapped into an Express application which uploads the graph data to Amazon S3. The actual hosting is done on one Heroku dyno.