github のプロジェクトのファイル一覧を表示するだけのサイトを作った

https://github.com/xuwei-k/githubtree
http://githubtree.appspot.com/xuwei-k/githubtree

なんとなく思いついて、ついカッとなって数時間でつくったが、どれくらい使い道があるのか。
リポジトリ全体が、どういうフォルダ分け構成になってるのかなぁーって見てみたいけど、いちいち git clone したり、zipを download したりするのは面倒くさい*1というとき?

例えば play とかそれなりにファイル数多いものでも(運が良ければ)表示できます、やったね!
http://githubtree.appspot.com/playframework/Play20

環境は Google App Engine で unfiltered とか。zip解凍する部分は sbt のものを使ってます。
https://github.com/xuwei-k/githubtree/blob/master/src/main/scala/App.scala#L35-41
よくあるローンパターンがいっぱい用意されてて便利です。なぜScala-IOとかではないかっていうと、単に自分が慣れてるからです。このあたりの2つのファイルくらいを読めば、
https://github.com/sbt/sbt/blob/0.11.2/util/io/IO.scala
https://github.com/sbt/sbt/blob/0.11.2/util/io/Using.scala
だいたい分かるし。
こんな感じで、
https://github.com/xuwei-k/githubtree/blob/2f84c9118f192736813c7b3acb274dafc3640d39/build.sbt#L17
一行追加すれば使えるのでオススメです。

こういうちょっとしたもの作るのには、 Google App Engine と Unfiltered はとても手軽で便利なので、みんなやりましょう。g8のテンプレートあります↓

https://github.com/unfiltered/unfiltered-gae.g8

*1:もしくはパソコンが手元になくそれが不可能な状態