はじめまして。予約/顧客台帳サービス「トレタ」のWeb版を開発をしているフロントエンドエンジニアの堀口です。
ブログが始まったばかりですので、今回はトレタのウェブ版がどのようなものか、簡単に紹介します。
トレタといえばiPadアプリやWeb予約が注目されるけど、Web版もしっかりあるんだよー、ということをお伝えしたいです。
Web版はiPadの移植ではない
トレタのアプリにはiPadとWebの2つがあり、それぞれカバー領域が違います。簡単にいうと、iPadは現場での利用を想定していて、Webは現場というよりはバックオフィスや本部での利用を想定しています。
以下の画像は、それぞれの領域を表したマトリクスです。
(縦軸: 顧客との距離 | 横軸: いつの予約か)
iPadアプリとWeb版、いくつか同じ機能があります。ただ、まったく同じではなく、利用者・利用シーンに合わせて、細かい仕様を変更しています。
予約入力画面 (左: iPadの簡単入力画面 | 右: Webの入力画面)
分析機能
iPadアプリとWeb版の違いの一つとして「分析機能」があります。これはWeb版でのみ提供している機能で、予約データの集計や分析をすることができます。
(左: 予約件数/人数の推移 | 右: 常連客比率がわかる来店回数の集計)
データの取得にはBigQueryを利用しています。トレタのアプリはiPadもWebも同じAPIサーバーを利用しているのですが、分析機能はBigQueryを利用しています。
BigQueryのおかげで、SQLを書けば大抵のデータは取得できます。新機能の追加も、本体のAPIサーバーに変更を加えることなく、柔軟で速い対応ができるようになっています。
使っている技術
- AngularJS (1.5) / Karma / Protractor
- TypeScript
- Sass
- Grunt
- Bugsnag
- CircleCI
この辺りは、特に目新しいことはないですね。SassやGruntは今後どうするかわかりませんが、Angular(2も含む)やTypeScriptは今後も使っていきたいです。
Angularは1.5になってからコンポーネントベースでの開発がしやすくなったので嬉しいです。
最後に
簡単ですが、初回ということで、トレタWeb版の紹介をさせていただきました。
今後はもっとフロント側の技術、Angular2や、それにあわせて、RxJSとかReduxとか、そういった話をしていきたいなーと思っています。 というわけで、今後もよろしくお願い致します。