PWAとは「インストールできるWebアプリ」
DentakulはWebサイトですが、「PWA」という仕組みを使うことでお使いの端末にアプリとしてインストールできるようになっています。
PWAは「Progressive Web Apps」の略で、Webサイトでありながらネイティブアプリのような体験を提供できる技術のことです。
ホーム画面にアイコンを追加してアプリのように起動できるほか、通常のブラウザ表示に見られるアドレスバーなどのUIを省いた、アプリらしい画面で利用できるのが特徴です。また、一度読み込んだデータをキャッシュする仕組みにより、オフライン環境でも一部の機能を利用できる場合があります(Dentakulはオフラインでも動きます)。
各プラットフォームのアプリストアを経由する必要がなく、ブラウザからアクセスするだけでインストールできる手軽さも大きなメリットです。
PWAという手法を選んだ理由
最初のきっかけとしては、アプリストアに出さなくていいから楽、というだけだったのですが。
まず、iOSの審査が不要、AppStoreの会員費(毎年99ドル!)も不要。
また、1回作ればiOSもAndroidもWindowsもMacも対応したアプリになります。もともとのターゲットはスマホだけだったのですが、パソコンで使えるのが結構便利です。
Webアプリではありつつもサーバーに計算式や結果の情報は一切送らないので、Webサイトさえ見れるなら仕事用のPCにも入れやすいかと思います。
PWAの作り方概略
細かい作り方はネットにいくらでも情報があるので、ものすごく大雑把に説明しますね。
とにかくまずはWebサイトを作ります。普通のブラウザで普通に動くものができたら、それをHTTPS化しましょう(ただし、localhostならHTTPS化は不要らしいです)。次に manifest.json にPWAとしての設定を書き、「Service Worker」と呼ばれるJavaScriptを作成すればPWAとして動くようになります。
作りたいアプリをWebサイトとして実装することが重要です。
「PWA」という名前だけでも覚えてほしい
今どき「PWAで〇〇のアプリを作って。要件は〜〜」とかコーディングエージェントに投げればAIが作ってくれたりします。ただそのためには「PWA」というキーワードを知っている必要があります。
自分で開発しなくても、用語を知っていると指示が出しやすい、というひとつの例だと思います。