I was going to write a dependency checker for Elixir using :digraph to model the dependencies.
However while trying to work out how to read the deps from a mix.exs file (without parsing it myself) I found an existing command.
mix deps.tree
This solved the problem that I had, namely identifying why a given dependency is used.
This has a useful switch, which combined with a graphviz utility:
mix deps.tree --format dot && dot -Tpng deps_tree.dot -o deps_tree.png
I updated the phoenix generator and built a simple phoenix, naturally called Fawkes.
This is the dependency tree:
