2013現在進行中で開発・運用しているWebアプリのファイルとディレクトリが若干ゴチャゴチャしてたんで、整理したらだいーぶスッキリした。templates/ちなみにこのプロジェクトは以下が前提です。Perl製、WebのフレームワークはMojoliciousを使っている一つじゃなくていくつかのアプリのエンドポイントがあるつまり一つのModel、複数の「Contoroller郡」で構成されている一個一個見て行こう!Makefile.PLPerlプロジェクトをビルドするためのファイルだお。現状ではとりあえず「Module::Install」使っています。cli/CLI、つまりコマンドラインから実行する類いのスクリプトファイルが入っています。cronなどで定期的に実行されるプログラムももちろんこの中。config/設定ファイルを入れます。最低でも「development.pl」と「production.pl」が入っていますな。拡張子でも分かる通り、設定ファイルはPerlのスクリプトですね。YAMLとかはもう使いません。deploy/デプロイ=サーバ環境への配置に使える便利なスクリプトが入っているよ。いう薄いCapistranoみたいなすごく使いやすいデプロイツールの設定ファイルが入っているんだ。昨日から使いだしてるんだけどガチで、Cinnamonかわいいよ。etc/なんかどこに入れよっかなー?って迷った感じのファイルを入れてるよ。僕はDBのスキーマ定義ファイルが入ってるね。lib/Perlのライブラリ群だよ。「lib/MyApp/Web/Controller」以下にコントローラを置いたり、「lib/MyApp/Model/Hoge.pm」というファイルにモデルの一つを定義したりしてるよ。この辺りの名前空間の切り分けが大事かもね。log/これはフレームワークが自動的に吐くログが入るよ。開発時にONにするね。psgi/上記した通り複数アプリをこのディレクトリ内で扱っているから複数のPSGIファイルが存在するんだ。この中にぶち込んでる!public/静的コンテンツを置く場所だよ。これもMojolicious標準で使われているディレクトリ構造に従っている。フロントサーバに静的コンテンツの配信を任せたい時とかは、条件を指定してこのディレクトリを参照させるね。sandbox/実験スクリプトを置く場所だよ。レポジトリには入れないんだー。t/テストファイルを入れるよ。頑張って書かないとね。templates/これだけディレクトリ名が複数系でちょっとキモいかもだけど、テンプレートファイル用のディレクトリ。Mojolicious標準のテンプレートエンジンを使っているから拡張子が「.html.ep」のファイルだらけさ。何が言いたいかって言うとCinnamonがすごいいいってことと、ディレクトリすっきりさせたりして気持ちが晴れたってことですね。Webアプリにおけるキャッシュ。