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
推しの VTuber の公式 Web サイトを作った Part.2
Search
嘉音とんと
August 01, 2023
41
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
推しの VTuber の公式 Web サイトを作った Part.2
嘉音とんと
August 01, 2023
More Decks by 嘉音とんと
See All by 嘉音とんと
CSSの歩き方
kanon_tonto
0
67
これまでに一番苦労したプロジェクト
kanon_tonto
0
40
推しの VTuber の公式サイトを作った
kanon_tonto
0
190
ぼっちがリモートワークやってみた
kanon_tonto
0
100
Kanazawa.rbを振り返る
kanon_tonto
0
120
もう僕は勤怠を入力しなくても良い
kanon_tonto
0
60
Goで始めるWebsocketプログラミング
kanon_tonto
0
180
AWS Lambdaでファイルをこねくり回す
kanon_tonto
0
440
iOSアプリをリリースするまで
kanon_tonto
2
430
Featured
See All Featured
Google's AI Overviews - The New Search
badams
0
1.6k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
950
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
460
We Are The Robots
honzajavorek
0
380
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
330
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Balancing Empowerment & Direction
lara
6
1.3k
How STYLIGHT went responsive
nonsquared
100
6.3k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Being A Developer After 40
akosma
91
590k
Amusing Abliteration
ianozsvald
1
310
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
370
Transcript
@27ma4_ton10 推しの VTuber の 公式 Web サイトを作った Part.2
とんと # Webエンジニア # マリオカート # Go / Javascript
以前にも Web サイトは作っていた
今回の犠牲者 (?) は KayanoA さんと 茅野ユウさんです!
https://kayanoau.netlify.app/
None
🛠 技術スタック ・Next.js ・Tailwind CSS
Next.js
❓ なぜ Next.js なのか ・画像の扱いやすさ ・ SEO の強さ ・ページ遷移のしやすさ
❓ なぜ Next.js なのか ・画像の扱いやすさ ・ SEO の強さ ・ページ遷移のしやすさ
📷 画像の扱いやすさ Next.js が提供している Image Component これ目当てで Next.js を 導入する人も多そう?
src は png だが...
自動的に webp に変換している!
自動的に lazy オプションが付与される!
【おまけ】 background-image で png 以外を使う方法
DOM 側は三項演算子によって class を動的に付与する
複数の画像をイテレートしながら 1 枚ずつ読み込む処理
avif/webp が 読み込めた場合 読み込みに 失敗した場合
resolve からのメッセージを 基にして、どちらの形式が 読み込まれたかを判断する
❓ なぜ Next.js なのか ・画像の扱いやすさ ・ SEO の強さ ・ページ遷移のしやすさ
📄 SEO の強さ
📄 SEO の強さ 静的メタデータ 動的メタデータ
📄 SEO の強さ 静的メタデータ 動的メタデータ
📄 SEO の強さ 基本設定 Twitter の設定 OGP の設定
❓ なぜ Next.js なのか ・画像の扱いやすさ ・ SEO の強さ ・ページ遷移のしやすさ
♻ ページ遷移のしやすさ Link コンポーネントを 設置するだけで ルーティングが可能になる
♻ ページ遷移のしやすさ 加えて... ・ SSG (事前にサーバ側でビルドをする方法) により リクエストがあった時に高速で遷移できる ・ Next.js
の prefetch 機能により、 <Link> タグの中身は バックグラウンドで事前に取得される ・コードベースで書きやすいだけでなく、表示においても優秀🤩
Tailwind
❓ なぜ Tailwind なのか ・クラス名を考えなくて良い ・ SASS 戦争をしなくて良い ・ CSS
ファイルを作らなくて良い
✏ Tailwind の書き方 クラス名が直接そのまま スタイルとなる⭐
♻ 改めてメリットを確認 ・クラス名を考えなくて良い ・ SASS 戦争をしなくて良い ・ CSS ファイルを作らなくて良い
👎 Tailwind のデメリット ・クラス名が長くなりがち😞
🎙 最後に ・Next.js + Tailwind がアツい! ・シンプルで高速なのでオススメ