JSRelでlocalStorageを使って

完全オフラインなブラウザアプリ
(ちょっとだけラフノートの宣伝)
J S オ ジ サ ン # 2
2014年5月29日
ラフノート株式会社
代表 西小倉 宏信
自己紹介
自己紹介
→IT土方歴7年
いろんなWebサービス作ってきました
2010年
とある
クライアント様からの
要望
「Webアプリを作って欲しい」
!
!
ただし
オフラインでも
動いて欲しい
提案@2010年
提案@2010年
FlashかSilverlight
を経由してファイルに
データを保存?
やめた
HTML5!?
localStorage!?
localStorageは
KVSだけどこの仕様で
RDBっぽくなれば使えるかも?
JSRel
shinout / jsrel @ github
JSRelの特徴
1.localStorage、Node、Titaniumで動く
2.同期実行
3.RDB
var result = db.find('table1');
var result2 = db.find(‘table2');
// do something
db.find('table1', function (e, result) {
db.find('table2', function (e, result2) {
// do something
});
});
AppCache版@2012年
AppCache
ここに書くと	
  
キャッシュされる
ここに書くと	
  
キャッシュされない
!
・不安定
・キャッシュが消えないことがある
・Chromeの自動バージョンアップで

  不具合が出た事例
・初回はネット必要
完全オフライン版@2013年
file://
画像はbase64化

CSS、JSと一緒に全て
1つのhtmlファイルに埋め込み、
File URI scheme
にて動作!
DEMO
!
・安定(常にfileそのものを参照)
・USBメモリに入れて配布すれば

 終始オフラインで動作!
オンラインの時だけデータ送るとかもできる
結論
JSRel便利。
今後も使っていきたいので
皆様starやforkやPullRequest
お願いします
https://github.com/shinout/jsrel
最後にちょっとだけ
ラフノート宣伝
GitHubのWIP PR
ワークフローいいですよね
GitHubの文書版である「ラフノート」
はシステム的にWIP形式をサポート
ラフノート株式会社

代表 西小倉宏信
ご清聴ありがとうございました
PC or iPhoneで
「ラフノート」
で検索!

JSRelでlocalStorageを使って 完全オフラインなブラウザアプリ@JSおじさん #2