Graphically view your Gemfile dependencies
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
README.md
sample_output-rails_app.png
tree.rb

README.md

Bundle View

I have grand aspirations for this code. For now: silly simple.

sample output

Prerequisites

  1. Ruby Gems
  2. Gem Bundler
  3. GraphViz
  4. ruby-graphviz gem
  5. A project with a Bundler Gemfile. May I suggest a Rails 3 app?

Run it!

Either copy this file into a dir with a Gemfile or set the Gemfile path manually by assigning ENV['BUNDLE_GEMFILE']

What you'll see

  • Blue nodes: explicit requires from the Gemfile
  • Grouped dependencies in boxes (unless a dependency is in many non-default groups, GraphViz doesn't handle this)
  • Rectangle nodes: System Gems

Future

I have a lot of crazy ideas. No clue if this is going to become anything. But it's fun...

  • Turn it into an actual module, as opposed to just a bunch of ruby in a file
  • Turn it into an actual Gem. Seems appropriate.
  • Make it an extension/plugin to Bundler
  • Support exporting to HTML with embedded SVG...maybe with some hover effects, links to RubyGems.org for each package, etc.
  • Be slightly more robust about handling gems -> not just using their simple names
  • Show version info, etc. Version requested vs what was picked, etc.

Your ideas? Share!