node.jsでネイティブPCアプリを作ることのできるNW.js(旧Node-Webkit)はご存知の方は多いでしょう。
JavascriptというWEBの言語で、ちょっとしたツールを作ったり、デスクトップガジェットを作ったりできるのは、
WEB寄りのプログラマやエンジニアにとっては、嬉しいツールです。
 
で、そんな話をしていると、大体出てくる要求としては、PHPやPerlやRubyで作れないの?って言う要求ですね。
調べてないですが、多分Rubyはありそうです(文化面で)。PerlはPerl/Tkでがんばりましょうや。
PHPは?って探すと、NW.jsのPHP版とも言うべき、nightrainというのがあります。
 
それの話をば。。。


ディレクトリ構成


アプリケーションパッケージを展開すると、こんなディレクトリ構造になっています。
settings.iniでウインドウ状態の定義や、公開ディレクトリ(でいいのか?)の定義をします。
 
定義ファイルを見ると、Macの場合は、Mac標準で入っているPHPを利用するように定義してあるようです。
ということは、相対パスをつかってパッケージングすれば、バージョン違いのPHPを利用したり、
nightrain専用のphp.iniを持ったPHPを使えるということでしょうか。その辺は、未検証ですが。
 


公開ディレクトリ

公開ディレクトリは「www」内で、とりあえずCodeigniterを入れてみたところ、普通に動きました。
普通のWEBサイトのように動いてくれるようです。
__DIR__などのマジック定数もちゃんと処理してくれますし、composerもいけました。
 
まぁPHPなんでマルチスレッドには対応してなかったりなど、悲しいところは
そのままなんですが、広範なライブラリを持つPHPでちょこーっとアプリを作れるのは、
やはり大きいですねー。
 


ところがですね

こんな便利なnightrainなんですが、開発をやめちゃったようで、
プロジェクトページが閉鎖になっています。
 
どうも公開のリポジトリは残っているようなんですが、ビルドがめんどくせぇ。ということで、
Mac版バイナリが見つかったので、
それを共有するために、この記事を書きました。
 
ダウンロードはこちらから
ライセンスは、MITライセンスです。
 
現場からは以上です。