Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Lighthouseで500点を目指す
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yosuke Onoue
May 05, 2018
Technology
590
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Lighthouseで500点を目指す
「WordBench大阪 & 京都 & Ionic Japan 5月 フルスイング」の発表資料です。
Yosuke Onoue
May 05, 2018
More Decks by Yosuke Onoue
See All by Yosuke Onoue
ネットワーク可視化の世界
likr
8
7.1k
Think About Front-end Web Development with Rust
likr
2
600
Yewにおけるoff-the-main-thread
likr
1
860
行政事業レビューデータの可視化 / Visualization of Japan's National Budget with JUDGIT!
likr
1
280
モダンJavaScript再入門 / Re-introduction to Modern JavaScript
likr
24
12k
Web-based Data Visualization with Rust and WebAssembly
likr
4
6.3k
Introduction to Graph Drawing
likr
0
570
20190707Ionic_Meetup.pdf
likr
0
500
About the end of the web
likr
2
590
Other Decks in Technology
See All in Technology
10Xに技術的負債をもたらした「2つの境界の歪み」その構造と解消への営み
10xinc
0
2.1k
SREへの勘違いに気づいた後の話
tomodakengo
0
110
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
170
なぜ「決定性」が 決定的に重要なのか? Durable Execution 基盤の数理的理解 #serverlessjp / ServerlessDays Tokyo 2026
ytaka23
3
920
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
220
安心して変更できるWebフロントエンドの作り方
pirosikick
5
2.8k
Genieを崇めよ
kameitomohiro
0
170
絵ではじめるKubernetesセキュリティ
aoi1
4
690
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
490
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
130
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
250
あけおめLINE 傾向とその対策
nasa9084
0
180
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
What's in a price? How to price your products and services
michaelherold
247
13k
How to train your dragon (web standard)
notwaldorf
97
6.8k
Navigating Team Friction
lara
192
16k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.2k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
340
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
3
4.3k
For a Future-Friendly Web
brad_frost
183
10k
Transcript
-JHIUIPVTFͰΛࢦ͢ ͓ͷ͏͑ 8PSE#FODIେࡕژ*POJD+BQBO݄ϑϧεΠϯά ݄
ࣗݾհ w ඌ্༸հ :PTVLF0OPVF w ຊେֶจཧֶ෦ใՊֶՊॿڭ w ՄࢹԽɺ࠷దԽɺΞϧΰϦζϜͷݚڀ w
8PSE1SFTTॳ৺ऀ w ͘͢Δͷ͕͖
ࠓ֮͑ͯؼͬͯཉ͍͜͠ͱ w 18"$IFDLMJTU w -JHIUIPVTF
-JHIUIPVTFͬͯ·͔͢ʁ
-JHIUIPVTFʁ w 8FCαΠτͷղੳπʔϧʢ$ISPNF֦ுPSίϚϯυʣ w 1SPHSFTTJWF8FC"QQ w 1FSGPSNBODF w "DDFTTJCJMJUZ w
#FTU1SBDUJDFT w 4&0 w $ISPNF͔Βඪ४ࡌʢ"VEJUTQBOFMʣ w CZ(PPHMF
ࠓ͙ͬͯ͢ʂ
None
None
None
None
1SPHSFTTJWF8FC"QQT
1SPHSFTTJWF8FC"QQT w IUUQTEFWFMPQFSTHPPHMFDPNXFCQSPHSFTTJWF XFCBQQT w 8FCαΠτͱωΠςΟϒΞϓϦͷ ͍͍ͱ͜औΓΛͨ͠8FCΞϓϦ w 1SPHSFTTJWF&OIBODFNFOU w
ߴ͍ϢʔβϏϦςΟͷ࣮ݱ w ϏδωεϑϨϯυϦʔ
8FCͷτϨϯυ w ੩త8FCαΠτ w )5.-ɺ8FCαʔόʔ w ಈత8FCαΠτ w 1)1ɺ1ZUIPOɺ3VCZɺʜ w
4JOHMF1BHF"QQMJDBUJPO 41" w +BWB4DSJQUɺ3&45"1* w 1SPHSFTTJWF8FC"QQT 18" w 41" Ћ ΑΓྑ͍69 ύϥμΠϜͷน w ൃͷҧ͍ w ։ൃํ๏ͷҧ͍
18"$IFDLMJTU IUUQTEFWFMPQFSTHPPHMFDPNXFCQSPHSFTTJWFXFCBQQTDIFDLMJTU
18"$IFDLMJTU w )5514 w Ϩεϙϯγϒ w ΦϑϥΠϯ w ϗʔϜը໘Ճ w
ճઢରԠ w ΫϩεϒϥβରԠ w εϜʔζͳϖʔδભҠ w ϖʔδຖͷ63- IUUQTEFWFMPQFSTHPPHMFDPNXFCQSPHSFTTJWFXFCBQQTDIFDLMJTU ϕʔεϥΠϯཁ݅ ൣతͳ18" w ΠϯσοΫεՄೳ w 69 w ύϑΥʔϚϯε w Ωϟογϡ w ௨ w ͦͷଞ ྑ͍8FCαΠτͷࢦ
18"$IFDLMJTU w )5514 w Ϩεϙϯγϒ w ΦϑϥΠϯ w ϗʔϜը໘Ճ w
ճઢରԠ w ΫϩεϒϥβରԠ w εϜʔζͳϖʔδભҠ w ϖʔδຖͷ63- ϕʔεϥΠϯཁ݅ ൣతͳ18" w ΠϯσοΫεՄೳ w 69 w ύϑΥʔϚϯε w Ωϟογϡ w ௨ w ͦͷଞ 41"ઃܭؔ࿈
18"$IFDLMJTU w )5514 w Ϩεϙϯγϒ w ΦϑϥΠϯ w ϗʔϜը໘Ճ w
ճઢରԠ w ΫϩεϒϥβରԠ w εϜʔζͳϖʔδભҠ w ϖʔδຖͷ63- ϕʔεϥΠϯཁ݅ ൣతͳ18" w ΠϯσοΫεՄೳ w 69 w ύϑΥʔϚϯε w Ωϟογϡ w ௨ w ͦͷଞ ʮϗʔϜը໘Ճʯؔ࿈
18"$IFDLMJTU w )5514 w Ϩεϙϯγϒ w ΦϑϥΠϯ w ϗʔϜը໘Ճ w
ճઢରԠ w ΫϩεϒϥβରԠ w εϜʔζͳϖʔδભҠ w ϖʔδຖͷ63- ϕʔεϥΠϯཁ݅ ൣతͳ18" w ΠϯσοΫεՄೳ w 69 w ύϑΥʔϚϯε w Ωϟογϡ w ௨ w ͦͷଞ ΦϑϥΠϯؔ࿈
18"$IFDLMJTU w )5514 w Ϩεϙϯγϒ w ΦϑϥΠϯ w ϗʔϜը໘Ճ w
ճઢରԠ w ΫϩεϒϥβରԠ w εϜʔζͳϖʔδભҠ w ϖʔδຖͷ63- ϕʔεϥΠϯཁ݅ ൣతͳ18" w ΠϯσοΫεՄೳ w 69 w ύϑΥʔϚϯε w Ωϟογϡ w ௨ w ͦͷଞ ύϑΥʔϚϯεؔ࿈
18"$IFDLMJTU w )5514 w Ϩεϙϯγϒ w ΦϑϥΠϯ w ϗʔϜը໘Ճ w
ճઢରԠ w ΫϩεϒϥβରԠ w εϜʔζͳϖʔδભҠ w ϖʔδຖͷ63- ϕʔεϥΠϯཁ݅ ൣతͳ18" w ΠϯσοΫεՄೳ w 69 w ύϑΥʔϚϯε w Ωϟογϡ w ௨ w ͦͷଞ 4&0ؔ࿈
18"$IFDLMJTU w )5514 w Ϩεϙϯγϒ w ΦϑϥΠϯ w ϗʔϜը໘Ճ w
ճઢରԠ w ΫϩεϒϥβରԠ w εϜʔζͳϖʔδભҠ w ϖʔδຖͷ63- ϕʔεϥΠϯཁ݅ ൣతͳ18" w ΠϯσοΫεՄೳ w 69 w ύϑΥʔϚϯε w Ωϟογϡ w ௨ w ͦͷଞ ϗεςΟϯάؔ࿈
ଟ͘18"ಛผͷٕज़Ͱͳ͍
͘͠ͳ͍Ͱ͢ΑͶʁ
18"Λ࡞ΔͨΊʹ lྑ͍8FCαΠτzΛ ͨΓલʹ࡞Ζ͏
ྑ͍8FCαΠτʁ w ΩϨΠͳσβΠϯʁ w ใ͕ͨ͘͞Μ٧·ͬͯΔʁ w ศརʁ w ද͕ࣔૣ͍ w
ָ͍͍ͬͯͯ͠ʁ w εϚϗͰݟ͍͢ʁ w ਓ͕ͨ͘͞Μू·Δʁ w ίϯόʔδϣϯ͕ଟ͍ʁ
lྑ͍8FCαΠτzͷج४Λ࣋ͭ
ڝٕ-JHIUIPVTFͷεεϝ w ૉৼΓʢϑϧεΠϯάʣ w ٬؍తɾఆྔతͳࢦඪͰ8FCαΠτΛධՁ͢Δ w ۀͰཱͭͷʁ w ϕϯνϚʔΫͰ͢Β͕औΕͳͯ͘େৎʁ
-JHIUIPVTFͷείΞΛ্͛Δ ·ͱͳ41"Λ࡞Δ w "DDFTTJCJMJUZɺ#FTU1SBDUJDFTɺ4&0 4FSWJDF8PSLFSɺ"QQ.BOJGFTUͷରԠΛ͢Δ w 1SPHSFTTJWF8FC"QQT
ύϑΥʔϚϯεΛٻ͢Δ w 1FSGPSNBODF
18"ϑΝʔετͳઃܭ w ޙ͚Ͱ18"ʹ͢Δͷ͍͠ w ࠷ॳ͔Β18"Λҙࣝͨ͠ઃܭ 18"ϑΝʔετ w 18"ͷ࡞Γํ
41"Λ͔ͬ͠Γ࡞Δ 4FSWJDF8PSLFSɺ8FC"QQ.BOJGFTUʹରԠ͢Δ ύϑΥʔϚϯενϡʔχϯάΛؤுΔ
41"Λ͔ͬ͠Γ࡞Δ w "DDFTTJCJMJUZ w จࣈ৭ͱഎܠ৭ͷίϯτϥετɺϦϯΫͷςΩετɺ φϏήʔγϣϯɺλΠτϧཁૉɺ*%ଐੑͷॏෳɺ MBOHଐੑɺWJFXQPSUɺBMUଐੑɺSPMFଐੑɺBSJB ଐੑɺWBMJEͳཁૉ ߏɺʜ w
#FTU1SBDUJDFT w %FQSFDBUFEͳ"1*ͷېࢭɺ)5514ɺ)551ɺ ίϯιʔϧʹΤϥʔ͕ग़ͳ͍ɺը૾ͷΞεϖΫτൺɺʜ w 4&0 w ϞόΠϧͰదͳϑΥϯταΠζɺUJUMFཁૉɺNFUBཁૉɺʜ
4FSWJDF8PSLFSɺ8FC"QQ.BOJGFTUରԠ w 4FSWJDF8PSLFS w QSFDBDIFSVOUJNFDBDIF w XPSLCPY w XFCQBDLXPSLCPYQMVHJO w
8FC"QQ.BOJGFTU w "QQ*OTUBMM#BOOFS
const WorkboxPlugin = require('workbox-webpack-plugin') module.exports = { plugins: [ new
WorkboxPlugin.GenerateSW({ swDest: 'sw.js', globDirectory: './public', globPatterns: [ '*.{html,css,js}' ], globIgnores: [ '_redirects', 'bundle.js', 'sw.js' ], navigateFallback: '/index.html' }) ] }
{ "short_name": "vdslab", "name": "vdslab Website", "icons": [ { "src":
"icon128.png", "sizes": "128x128", "type": "image/png" }, { "src": "icon192.png", "sizes": "192x192", "type": "image/png" }, { "src": "icon512.png", "sizes": "512x512", "type": "image/png" } ], "start_url": "/index.html", "background_color": "#fff", "theme_color": "rgb(47,87,89)", "display": "standalone" }
ύϑΥʔϚϯενϡʔχϯάΛؤுΔ w 8FCϖʔδͷ༰ྔΛখ͘͢͞Δ w 3"*-Ϟσϧͷ-ʢ-PBEʣɿNTҎ w 3FHVMBS(ʢLCQT NT355ʣ w ͦͷϥΠϒϥϦຊʹඞཁͰ͔͢ʁ
w 443WT131- w 443ɿ/PEFKTɺ'BB4ͳͲͰؤுΔ w 131-ɿ)5514FSWFS1VTI
େنϓϩμΫτͰ͜ΕΒΛ ҰਓͰ͜ͳ͢͜ͱ͍͠
গ͠ະདྷͷ w ࠓޙύϑΥʔϚϯεΑΓॏཁͳཁૉʹͳΔʢ͔ʣ w ϞόΠϧϑΝʔετΠϯσοΫε w ݕࡧΤϯδϯ8FCαΠτΛఆྔతʹධՁ͢Δ w ύϑΥʔϚϯεΛߟ͑ΒΕΔ w
ΤϯδχΞʢͨΓલʣ w σβΠφʔɺσΟϨΫλʔɺʜ
ٕज़બΛ͢Δ w ඞཁͳٕज़ΛݟۃΊΑ͏ w ৽͍ٕ͠ज़ʢϥΠϒϥϦɺϑϨʔϜϫʔΫɺ"1*ɺ ༷ʣԿΛղܾ͠·͔͢ʁ w ٕज़ऀʢ͋ͳͨʣ͕ؾ࣋ͪྑ͘ͳΔͨΊʹٕज़ΛબΜ Ͱ͍·ͤΜ͔ʁ
ࠓ֮͑ͯؼͬͯཉ͍͜͠ͱ w 18"$IFDLMJTU w lྑ͍8FCαΠτzΛಥ͖٧Ίͨ݁Ռ͕18" w -JHIUIPVTF w lྑ͍8FCαΠτzΛ٬؍తɾఆྔతʹධՁ͢Δ w
είΞΛ্͛Δʹʁ w lపఈతͳΤϯδχΞϦϯάz