Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
firebaseを使って簡単にサイト作成!半年でそれっぽい クイズアプリを作成する!
Search
YukiWatanabe
February 02, 2023
Programming
0
160
firebaseを使って簡単にサイト作成!半年でそれっぽい クイズアプリを作成する!
https://pwanight.connpass.com/event/194223/
で発表した資料です。
YukiWatanabe
February 02, 2023
Tweet
Share
More Decks by YukiWatanabe
See All by YukiWatanabe
Chrome拡張機能の新機能 Side Panel APIについて
yutaroud
0
1.8k
Other Decks in Programming
See All in Programming
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
430
エディターってAIで操作できるんだぜ
kis9a
0
740
ゲームの物理 剛体編
fadis
0
350
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
0
180
ローカルLLMを⽤いてコード補完を⾏う VSCode拡張機能を作ってみた
nearme_tech
PRO
0
110
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
2.7k
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
160
関数実行の裏側では何が起きているのか?
minop1205
1
710
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
750
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
140
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
1.3k
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
400
Featured
See All Featured
Designing Experiences People Love
moore
143
24k
GraphQLとの向き合い方2022年版
quramy
50
14k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
21
Designing for Performance
lara
610
69k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
0
280
Side Projects
sachag
455
43k
Documentation Writing (for coders)
carmenintech
77
5.2k
Tell your own story through comics
letsgokoyo
0
740
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
0
15
Into the Great Unknown - MozCon
thekraken
40
2.2k
Transcript
2020/11/18 PWA Night vol.22 firebaseで簡単にサイトを作りましょう! 半年でそれっぽい クイズアプリを作成する
サービスの紹介 ◦クイズを作ったり、解いたりできる ◦何かを「学びたい」時に使ってもらう ▪繰り返し解いて学べる ▪問題を作ることで学びになる ここからアクセスできます 🙂
今日話すこと 機能紹介 • クイズ解答機能 • クイズ作成機能 • マイページ • メディア
システムの裏側 • こんな技術を使いました • 工夫した箇所 \こんなことを話します!/
MDNでは 安全なコンテキスト (HTTPS)、1つ以上のサービスワー カー、マニフェストファイルを持つ※1 みんなのスタディはサービスワーカーは使ってません。 (オフライン利用等できないのでご認識お願いします) ※1 https://developer.mozilla.org/ja/docs/Web/Progressive_web_apps 前置き PWAの定義(諸説あります)
01 機能紹介
機能紹介① クイズを解く
機能紹介② クイズを作る マイページ
機能紹介③ メディア
02 システムの裏側 Behind the system
サイト構成 route53 firestore firebase Auth firebase hosting cloud function react
サイト構成 route53 firestore firebase Auth firebase hosting cloud function react
OGP対応 OGPの例 Botによっては、jsを正しく解釈できない可能性があるので、 予めビルドしたものを解釈させる必要がある。
OGP対応 "hosting": { "public": "build", "rewrites": [ { "source": "/answer/**",
"function": "returnHtmlWithOGP" }, ~~~~~~ ], ~~~~~~~ } firebase.jsonに特定のリクエストのときだけ、 別途定義したfunctionを使うように指定するだけ!
サイト構成 route53 firestore firebase Auth firebase hosting cloud function react
持っているデータ クイズデータ ユーザデータ
クイズデータについて クイズデータ quiz: { categories: { label: “ビジネス” value: “business”
} userId: 1 creater: “なべ” title: “マーケ用語検定” description: “〜〜〜” content: { 0: { question: “CTAはなんの略” explanation: “マーケ用語で~~” answer: “Call to Action” false1: “~~~” false2: “~~~” } 1: {~~} } limited: false createdAt: xxxx/xx/xx updatedAt: xxxx/xx/xx }
なぜこんなデータ構成? 1書き込み、読み込みあたりに料金がかかるため
キャッシュもできます cloud function firebase hosting 予めfirestoreから データ取得 キャッシュした データから読み込み
使ってみてよかったこと • 環境構築がかなり楽、スピードは早い。 • 関連機能がかなりあるので、簡単なアプリ作成はかなり 楽
使ってみてつらかったこと • 従量課金のため、いつ課金されるかが怖い ◦ Alertの設定はマスト 無料プランもあるが、cloud functionsが使えない。 • インフラ側の細かいチューニングがやりづらい
Thanks ありがとうございました!