Kamishibai.js

Kamishibai.js

Kamishibai.jsはPonzu学会情報システムのほぼすべてのページ表示に関わるJavascriptライブラリーです。

数百、数千ページのウェブサイトを、ネットワークが安定しない状況もしくは完全なオフラインでも閲覧できるようにすることが主目的です。

Javascriptでモデルやコントローラを記述していないために、オフラインでCRUDするようなウェブアプリには向きません。一方でMVCのロジックをほぼすべてサーバに残したまま、一部のページだけをオフライン化したりするウェブサイトに適しています。

以下の機能があります。

  1. Ajaxレスポンスをローカルキャッシュに保存することにより、オフラインでもページ表示が可能。
  2. Ajaxによるページ表示の高速化。PJAX、Turbolinksと類似のアプローチ。
  3. HTMLフラグメントの置換などの簡略化。
  4. ページ切り替えのアニメーション。ページの一部だけをアニメーションすることも可能。
  5. Ruby-on-Railsのヘルパーを用意。ただしRailsがなくても使用可能。
  6. Javascriptでモデルを記述しないため、ビジネスロジックはサーバに一任。Javascript記述量が少なくてすむ。
  7. サーバからのレスポンスはHTMLフラグメントでもJSONでも可能。JSONの場合は自動的にJavaScriptのHTMLテンプレートを使用。

近い将来にKamishibai.jsを使って、Ponzuを完全にオフラインで動作させることが目標です。

Kamishibai.jsは近日中にオープンソース化する予定です。