Smoker

久々エントリ。

ちょっと前からHTTP::Engineを使ったWAFを書いてましたが
YAPCの資料を書く合間に一通りできたのでgithubに上げてみました。

http://github.com/nekokak/p5-Smoker/tree/master

最近HTTP::Engineを生で使ってアプリを書く事が多くなって来たのででっちあげてみた。

SmokerはHTTP::Engine+HTTPx::DispatcherなWebフレームワークを提供しつつ
バッチ系の処理も使いやすいようにしてみてます。

特徴としては色々なcomponentの組み合わせがcontextとして提供される感じ。

request/response/view/stash/config/modelなどなどを全部componentとして書いておき、
必要に応じてcontextに追加していく感じ。

結構無理矢理やってますが一通り思い通りに動かせるまでなってきた。
sessionとか必須系のcomponentがまだなかったりしますが随時追加する予定。

あとドキュメントは皆無です^^;

サンプルとしてSmokerを使ったNoPasteアプリもgithubに上げておきました。

http://github.com/nekokak/p5-Idiot/tree/master

idiotってアホとか間抜けとかの意味があるんですが、HTTP::Engineがいま(内部的に)大きく変わろうとしてる時に
気にせずにつくってみたので何となくつけてみた名前。

GreenDayのアルバム名の一部から拝借。

American Idiot
American Idiot
posted with amazlet at 09.09.05
Green Day
Warner Bros. (2004-09-21)
売り上げランキング: 3989
おすすめ度の平均: 5.0
5 Green Day
5 心地よい名盤
5 1曲1曲が過去の曲を超えた
5 新たな確立
1 私にはイマイチ・・・

ちなみにこのCDかなりお気に入り。

IdiotではDB周りの処理でSkinnyをつかってます。
そのうちサンプルを実際に設置してみるよてい。

arkとかHTTP::Engine系のWAFがでてきてますが、こういうアプローチってどうなんだべとおもた。
arkみてないけど^^;

最近SkinnyとかQudoとか作ってるわりに纏まった記事を書いてなかったので、
そろそろまじめにブログとかでfeedbackなりしてかんといかんなぁと思った。