Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Hosting with Firebase
Search
Ire Aderinokun
September 22, 2016
Programming
3
790
Hosting with Firebase
For Google Developers Launchpad in Sub-Saharan Africa (Lagos)
Ire Aderinokun
September 22, 2016
Tweet
Share
More Decks by Ire Aderinokun
See All by Ire Aderinokun
Web Accessibility: It Doesn't Have to Be Hard
ireade
4
1.1k
Becoming a GDE & Overcoming Stage Fright
ireade
4
470
Web Components: The Future of Web Applications
ireade
6
1.6k
What about CSS? Progressive Enhancement & CSS (Updated)
ireade
4
470
Building "The Loop" (Introduction to Frontend Development)
ireade
3
290
Demystifying Angular Universal
ireade
5
560
Introduction to UI/UX Design
ireade
9
680
Building Modern Progressive Web Apps
ireade
7
1.6k
What about CSS? Progressive Enhancement & CSS
ireade
9
4.5k
Other Decks in Programming
See All in Programming
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
640
Deep Dive into Kotlin Flow
jmatsu
1
370
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
楽して成果を出すためのセルフリソース管理
clipnote
0
190
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
250
AI Agents: How Do They Work and How to Build Them @ Shift 2025
slobodan
0
100
AI時代のUIはどこへ行く?
yusukebe
18
9.1k
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
170
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
420
デザイナーが Androidエンジニアに 挑戦してみた
874wokiite
0
550
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
250
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Side Projects
sachag
455
43k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Automating Front-end Workflow
addyosmani
1370
200k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Transcript
Hosting with Firebase Ire Aderinokun Google Launchpad Build 2016 (Lagos)
Hello! • Ire Aderinokun • User Interface Designer & Front-End
Developer • Head of Technology, Big Cabal Media • Google Developer Expert (Web Technologies)
What We’ll Cover • What is Firebase Hosting? • Why
Static Hosting? • Key Features of Firebase Hosting • Getting Started with Firebase Hosting • More Features of Firebase Hosting
What is Firebase Hosting?
The Firebase Suite
The Firebase Suite
Firebase Hosting is production-grade, web content hosting for developers
“Production Grade”
“Web Content”
“For Developers”
Why Static Hosting?
Increase in Popularity Decrease in Popularity Stack Overflow Developer Survey
2016 (http://stackoverflow.com/research/developer-survey-2016)
The Power of Front-End Frameworks
Progressive Web Applications
Key Features of Firebase Hosting
Served Over a Secure Connection
Zero-configuration SSL is built into Firebase Hosting so content is
always delivered securely
The Importance of HTTPS • Security for Users • Modern
Web APIs require HTTPS (e.g. Service Worker, Push API) • The Future Default
Fast Content Delivery
Each file you upload is cached on SSDs at CDN
edges around the world
None
Rapid Deployment
Using the Firebase CLI, you can get your app up
and running in seconds
firebase deploy
One-Click Rollbacks
Firebase Hosting provides full versioning and release management with one-click
rollbacks
None
Getting Started with Firebase Hosting
4 Simple Steps 1. Create a new Firebase project 2.
Install the Firebase CLI 3. Initialise your application 4. Deploy your website
1. Create a Firebase project
None
2. Install the Firebase CLI
Dependencies • Node.js (> 0.10.0) • NPM
npm install -g firebase-tools
3. Initialise your Application
firebase init
None
firebase.json { “hosting”: { “public”: “app”, “ignore”: [ “firebase.json”, “**/*.*”,
“**/node_modules/**” ] } }
.firebaserc { “projects”: { “default”: “PROJECT_NAME_HERE” } }
4. Deploy your Website
firebase deploy
None
https://YOUR_FIREBASE_APP_NAME.firebaseapp.com
More Features
Do More with Firebase • Hooking up a Custom Domain
• Setting up a Staging Environment • Setting up URL Redirects and Rewrites • Setting Custom Headers • Scaling your Application
Hooking up a Custom Domain
None
Automatically Secure
Setting up a Staging Environment
1. Create a new Firebase Project
2. Link New Project Under “staging” Alias firebase use --add
None
.firebaserc { “projects”: { “default”: “offline-fx”, “staging”: “offline-fx-staging” } }
3. Deploy from “staging” Environment
Setting up URL Redirects & Rewrites
Redirects { “redirects”: [{ “source”: “/old-url-path”, “destination”: “/new-url-path”, “type”: 301
}] }
Rewrites { “rewrites”: [{ “source”: “**”, “destination”: “/index.html” }] }
Setting Custom Headers
Headers • Cache-Control • Access-Control-Allow-Origin • X-UA-Compatible • X-Content-Type-Options •
X-Frame-Options • X-XSS-Protection • Content-Type
e.g. Access-Control-Allow-Origin { “headers”: [{ “source”: “**/*.@(eot|otf|ttf|ttc|woff|font.css)”, “headers”: [{ “key”:
“Access-Control-Allow-Origin”, “value”: “*” }] }] }
e.g. Cache-Control { “headers”: [{ “source”: “**/*.@(jpg|jpeg|gif|png)”, “headers”: [{ “key”:
“Cache-Control”, “value”: “max-age=7200” }] }] }
Scaling your Application
None
Thank You! @IreAderinokun #LaunchpadDev