PWAは夢を見るか夢になるか
by
さざんか / sasanqua
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
PWAは夢を見るか、夢になるか さざんか / sasanqua 6 September 2025 フロントエンドカンファレンス北海道2025 @sasanqua_dev
Slide 2
Slide 2 text
さざんか / sasanqua Web Frontend Engineer / Student 関東で大学生してます フロントエンド書いてます @sasanqua_dev sasanqua-dev 北海道に初上陸&初登壇です
Slide 3
Slide 3 text
First Second Thrid Final What is PWA PWAの仕組み これからのPWA Agenda 1 PWAのこれまでの歴史
Slide 4
Slide 4 text
First Second Thrid Final What is PWA PWAの仕組み これからのPWA Agenda 2 PWAのこれまでの歴史
Slide 5
Slide 5 text
こんなアイコン見たことありませんか? 意外と身近なPWA What is PWA 3
Slide 6
Slide 6 text
意外と身近なPWA What is PWA 4
Slide 7
Slide 7 text
アプリケーションといえば What is PWA 5 ・Webアプリ Webブラウザ上で動作するアプリケーション ・ネイティブアプリ iOSやAndroidなどのデバイスにインストールして利用するアプリケーション
Slide 8
Slide 8 text
Progressive Web 「App」 What is PWA 6 ・Webアプリ Webブラウザ上で動作するアプリケーション ・PWA ・ネイティブアプリ iOSやAndroidなどのデバイスにインストールして利用するアプリケーション
Slide 9
Slide 9 text
PWAの特徴 What is PWA 7 ・URLを介して提供できる ・クロスプラットフォーム Webに近い特徴 モバイルアプリに近い特徴 ・インストールが可能 ・オフラインで動作可能
Slide 10
Slide 10 text
「インストールが可能」 What is PWA 8
Slide 11
Slide 11 text
ブックマークと何が違うのか What is PWA 9
Slide 12
Slide 12 text
ブックマークと何が違うのか What is PWA 10 ブックマーク(Qiita BookMark)は Chromeが生成している画像が アイコンとして表示される (with Chrome アイコン) BookMark
Slide 13
Slide 13 text
ブックマークと何が違うのか What is PWA 11 PWAはqiita.comのManifestで 設定されている画像がアイコンとして 設定されている PWA
Slide 14
Slide 14 text
ブックマークと何が違うのか What is PWA 12 PWA
Slide 15
Slide 15 text
ブックマークと何が違うのか What is PWA 13 リンク先は「chrome_proxy.exe」に対して 「https://qiita.com」を指定 BookMark
Slide 16
Slide 16 text
ブックマークと何が違うのか What is PWA 14 PWA リンク先は「chrome_proxy.exe」に対して 「app_id」を指定
Slide 17
Slide 17 text
立ち上げ時の挙動 What is PWA 15 Chromeのウィンドウが立ち上がる BookMark
Slide 18
Slide 18 text
立ち上げ時の挙動 What is PWA 16 PWA 独立ウィンドウで立ち上がる
Slide 19
Slide 19 text
立ち上げ時の挙動(モバイル) What is PWA 17 PWA スプラッシュ画面も表示される
Slide 20
Slide 20 text
First Second Thrid Final What is PWA PWAの仕組み これからのPWA Agenda 18 PWAのこれまでの歴史
Slide 21
Slide 21 text
キーワード PWAの仕組み 19 ・マニフェスト ・サービスワーカー ウェブブラウザとウェブサーバー間のプロキシとして機能 するJavaScript アセット PWAについての情報を提供する JSON ファイル
Slide 22
Slide 22 text
どのようにしてインストールできるのか(Installable) PWAの仕組み 20 ・Web App Manifest(マニフェスト)を設定することで インストールが可能になる 設定できる項目: https://developer.mozilla.org/en- US/docs/Web/Progressive_web_apps/Manifest
Slide 23
Slide 23 text
No content
Slide 24
Slide 24 text
No content
Slide 25
Slide 25 text
Webブラウザ Service Worker Webサーバー ブラウザ内ストレージ なぜオフラインでも動作するのか(Network independent) PWAの仕組み 23 ・Service Workerによってキャッシュを利用する形で 動作することができる ブラウザ
Slide 26
Slide 26 text
Webブラウザ Service Worker Webサーバー ブラウザ内ストレージ なぜオフラインでも動作するのか(Network independent) PWAの仕組み 24 ・Service Workerによってキャッシュを利用する形で 動作することができる ブラウザ オフライン時
Slide 27
Slide 27 text
キャッシュ戦略 PWAの仕組み 25 ・キャッシュ優先 ・キャッシュ更新付きキャッシュ優先 ・ネットワーク優先 キャッシュがある場合はキャッシュを返す ネットワークから取得したものをキャッシュしつつ キャッシュを返す
Slide 28
Slide 28 text
既存のNext.jsプロジェクトにPWAを組み込む PWAの仕組み 26 1.next-pwaを導入する
Slide 29
Slide 29 text
既存のNext.jsプロジェクトにPWAを組み込む PWAの仕組み 27 2.manifestを作成する
Slide 30
Slide 30 text
既存のNext.jsプロジェクトにPWAを組み込む PWAの仕組み 28 3._document.tsxを設定する ・headタグ内のlinkとしてmanifestへのパスを設定 ・headタグ内にtheme-colorを設定
Slide 31
Slide 31 text
First Second Thrid Final What is PWA PWAの仕組み これからのPWA Agenda 29 PWAのこれまでの歴史
Slide 32
Slide 32 text
PWAの歴史 ~2010年くらい ~ PWAのこれまでの歴史 30 レスポンシブデザインの発表 CSS3で標準化されたメディアクエリ(@media)を 利用してブラウザの画面に応じた要素表示を行うデザイン 「レスポンシブデザイン」が普及した メディアクエリは1997年のHTML4勧告に示されたのち 2000年にW3Cで制定が開始された。
Slide 33
Slide 33 text
PWAの歴史 ~2015年くらい ~ PWAのこれまでの歴史 31 Progressive Web Appsの発表 Chrome Dev Summit 2015の基調講演にてPWAが発表される。 Webをよくしていくための ・Reliability ・Performance ・Engagement の3つの方向性が示された
Slide 34
Slide 34 text
PWAの歴史 ~最近 ~ PWAのこれまでの歴史 32 iOS 16.4でのPWAの通知対応(2023) iOS16.4でPWAとしてインストールしたアプリからの 通知がサポートされた 2024にサポートの撤回が発表されたが多くの批判を集めたため 撤回が撤回された
Slide 35
Slide 35 text
First Second Thrid Final What is PWA PWAの仕組み これからのPWA Agenda 33 PWAのこれまでの歴史
Slide 36
Slide 36 text
ブラウザAPI これからのPWA 34 ◇ 広く使えるAPI ◇ 実験的なAPI ・位置情報 ・カメラ ・シリアル通信 ・NFC (・拡張子への関連付けの登録)
Slide 37
Slide 37 text
PWAという選択肢 これからのPWA 35 「Webの実装だけでクロスプラットフォーム対応ができる」 端末ネイティブな機能を実装しない (既存のWebアプリが担っているような機能) であればネイティブアプリの開発よりもPWA対応を選択肢に 入れてみませんか?
Slide 38
Slide 38 text
これからのPWA これからのPWA 36 ◇ いいこと ◇ 悪いこと ウェブAPIの対応やWeb技術の発展によってできることは 着実に増えている プラットフォーム提供側としてはネイティブアプリを推奨したいはず 手軽に実装できるからこそ信頼性の確保が課題 → iOSのようにサポートされなかったり撤回される可能性がある
Slide 39
Slide 39 text
PWAは夢を見るか、夢になるか これからのPWA 37 PWAは「PWA」として機能があるわけではなく 最新のWeb技術を使って従来のWebアプリよりも優れたエクスペリエンスを 提供するための手法 各ブラウザがPWAをサポートし続け、サポートされるウェブAPIが増え続ける ならばいつかはネイティブアプリと変わらないユーザー体験を得られるだろう
Slide 40
Slide 40 text
PWAは夢を見るか、夢になるか さざんか / sasanqua 6 September 2025 フロントエンドカンファレンス北海道2025 @sasanqua_dev