My CPAN Modules
TIME rest time current/total
TopicsPlaceHolder

My CPAN Modules

Hatena Tech

Sep 25th, 2014

Profile

songmu

Github::Hooks::Receiver

GitHubのwebhookを受け取って、イベントに応じて処理をdispatchさせられるやつ。

参考 Jenkinsでパラメータ付ビルドでブランチ指定出来るようにしつつ、GithubのHookも受け付けられるようにする

MySQL::Warmer

サーバー起動直後にMySQLのbuffer poolにデータ乗っけてくれるクエリ発行してくれる君

参考 お手軽InnoDBウォームアップを実現するMySQL::Warmerの話をGotanda.pm #2でしてきました

Archer

tokuhirom作。古のdeployツール。「Mobageを支える技術」って本に載ってる。

Riji

Octpressみたいなブログツール。gitの履歴を見てRSSを生成してくれるところがイケてる。CMS的に使うことも。(perl入学式とかGotanda.pmとか)

App::CPANGhq

cpan-ghqってコマンドが入る。CPANモジュールを指定すると、ghqでそのリポジトリのモジュールをgetしてくれる。

App::CPANRepo

cpan-repoってコマンドが入る。CPANモジュールを指定すると、そのモジュールのリポジトリ出力してくれる。

Task::BeLike::SONGMU

自分のお気に入りモジュールが入ってる。サラのPerlをビルドしてから

% cpanm Task::BeLike::SONGMU

とかやるとひと通り欲しい奴が入って便利

Test::Requires::Scanner

Test::Requires 'Test::mysqld';みたいに指定されているモジュールを抜き出す。

Test::mysqld::DatadirDumper

Test::mysqld用のデータディレクトリを作ってくれる。 あらかじめ、スキーマとFixture流し込んだディレクトリを作っておくことで、Test::mysqldの起動を爆速にする

Gearman::Starter

tokuhirom製のスクリプトをCPANize。 Gearmanを便利に使うやつ。いろいろgracefulな感じになってたり、監視ポート開いてたりする。

Parse::CommandLine

"perl -e 'say 1'" みたいな文字列を@ARGVに分割してくれるやつ。Daikuのために書いた。

Script::Ichigeki

一回しか処理させたくないスクリプトを実行するためのやつ。use Script::Ichigeki;を書いたスクリプトを実行すると、そのスクリプトは2回以上実行できない。

App::LLEvalBot

lleval用のIRC bot。Perl以外にも対応

Puncheur

Web Application Framework。Rijiで使用

Daiku

tokuhiromがもともと作ってた。Rakeみたいなやつ。

Text::Markdown::Slidy

Markdownをsectionにぶった切ってくれるやつ。

'===='とか'----'とかを見てsectionとかにぶった切ってくれる。このスライドもこれで作ってる。

Const::Common

以下のようにして、共通定数を定義する奴

package MyApp::Const;
use Const::Common (
    Hoge => 'Fuga',
    Piyo => 'Piyo',
);

Const::Common::Generator

Const::Commonの定数定義パッケージを自動生成してくれるやつ。

MySQL::Partition

MySQLのパーティションを切るときに便利なやつ

GitDDL::Migrator

gitとSQL::Translatorを利用して、greatなDBマイグレーションを実現するやつ

Cache::Redis

Cache::CacheインターフェースでRedisに値突っ込んでくれるやつ

APNS::Agent

Appleのpush通知を送ってくれるHTTPサーバーを立ててくれるやつ。curlでpush通知送れて便利。

% apns-agent --certificate=path/to/cert.cer --private-key=path/to/cer.key
Twiggy: Accepting connections at http://0.0.0.0:4905/

とかで起動できる。

参考HTTPでiOSのpush通知を送れる未来がやってきた(APNS::Agentの紹介)

App::FaceCDN

CDNの挙動をエミュレートするサーバーのつもりだった…

Teng::Plugin::SearchJoined

Tengでjoinを実現するためのplugin

Redis::LeaderBoard

Redisを使って、ランキング作ってくれる君

UnazuSan

リアクションIRC Botフレームワーク

Cache::Scaler::WithExpiry

有効期限付きのメモリキャッシュを実現するやつ

Teng::Plugin::ResultSet

TengでResultSetを実現するやつ。Iteratorを拡張している。

Git::Repository::FileHistory

Git::Repositoryのプラグイン。ファイル指定して更新履歴とか取れる。

DBIx::Schema::DSL

DBスキーマをDSLで書けるやつ

Text::Markup::Any

MarkdownとかTextileとか同じインターフェースで使えるようにするやつ

Ark

typester作のWAF。軽量Catalyst

HTML::Shakan

tokuhirom作。HTMLのフォームビルダー。

Ark::Plugin::Reproxy::Callback

なんかArkのプラグイン

Ark::Plguin::I18N

Arkで多言語対応するやつ

Ark::Plugin::Authentication

Arkで色々認証してくれるやつ

Ark::Plugin::MobileJP

Arkにモバイル対応入れるやつ

SQL::Translator::Producer::Teng

Tengのスキーマファイル書くのがたるいので、SQLから自動生成したかった

App::RunCron

cronスクリプト動かすためのラッパー。

参考 Perl Hackers Hub 第25回 cron周りのベストプラクティス(3)

DBIx::FixtureLoader

JSONとかYAMLとかCSVとかその辺をゆるふわにDBに突っ込んでくれる君。shiba.yamlのデータがshibaテーブルに入る。

Path::AttrRouter

typester作。Arkのルーティングに使われてる謎モジュール

DBIx::CSVDumper

なんかクエリ投げて、CSVに整形して出力してくれるやつ。Excelとかで読める。

SQL::Maker::Plugin::JoinSelect

SQL::MakerでJOINするやつ

Plack::App::Directory::Markdown

ディレクトリ以下のmarkdownを整形してくれるやつ

Plack::App::DataSection

__DATA__以下のファイルをマッピングしてplackで配信してくれる

Parse::Crontab

crontabの設定を読み込んでパースしてくれるやつ。

Config::PL

.plファイルを設定ファイルで簡単に使うためのやつ

use Config::PL;
my $conf = config_do 'config.pl';

Time::Piece::Plus

takujiさん作。Time::PieceのラッパーでDateTimeっぽく使えるようにしたやつ。

速いが最近だとTime::Momentで良い。

Math::CheckDigits

チェックディジット計算するやつ。バーコード処理とかで重宝。僕の最初のCPANモジュール

Plack::Middleware::Auth::OAuth

hidekさん作。OAuth 1の署名検証するやつ。

Plack::Middleware::UnicodePictogramFallback::TypeCast

Unicode絵文字をtypecast絵文字の画像にマッピングしてくれるやつ

L

ワンライナーにお役立ち。コードはほとんどtokuhirom

HTTP::MobileAgent::Plugin::SmartPhone

スマートフォン判別するプラグイン。メンテ放置されてる。

Plack::Middleware::Auth::QueryString

query stringでの認証機構を提供するやつ。APIとかに。

Encode::JP::Mobile::UnicodeEmoji

Unicode絵文字をEncode::JP::Mobile絵文字にマッピングするやつ

Plack::Middleware::Woothee

UAをWootheeを使って判別してくれるPlack::Middleware

Ukigumo::Server

うきぐもちゃん

Ukgumo::Client

うきぐもクライアント