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
WebComponentとSSGで作る 個人開発Webフロントエンド / TechTalk #69
Search
mazrean
March 05, 2026
Programming
250
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WebComponentとSSGで作る 個人開発Webフロントエンド / TechTalk #69
mazrean
March 05, 2026
More Decks by mazrean
See All by mazrean
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
280
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
180
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
390
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
630
Go Proposal Weekly Digestの作り方 / Go Connect #11
mazrean
0
320
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
790
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
640
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
600
KessokuのDIにおけるgoroutineスケジューリング / golang.tokyo #41
mazrean
0
720
Other Decks in Programming
See All in Programming
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
740
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
150
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
370
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.2k
AWSに止められる覚悟してますか?
morizo_1984
2
490
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
200
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
9.2k
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
150
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
790
Workers Cache を知る
syumai
0
320
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
400
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
260
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
10
36k
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
850
Designing Powerful Visuals for Engaging Learning
tmiket
1
580
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
690
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Skip the Path - Find Your Career Trail
mkilby
1
240
Being A Developer After 40
akosma
91
590k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Chasing Engaging Ingredients in Design
codingconduct
0
340
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
380
Side Projects
sachag
456
43k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Transcript
WebComponentとSSGで作る 個人開発Webフロントエンド @mazrean TechTalk #69
若松俊介 / mazrean ▪ IT本部IT基盤部第二G • Web フロント本職ではない ▪ Frontend
Up! / Go Day ▪ 強制デジタルデトックス中 • スマホが壊れた… @mazrean22 マズリーン 2
「とりあえずNext.js」 していませんか?
Next.jsは大抵Better以上の選択肢 Next.jsは何でもできて優秀 ▪ レンダリング 方法の選択肢の多さ ▪ 強力なエコシステム 4
レンダリング方法の選択肢の多さ ▪ 大抵の方法を選択可能 • CSR(Client-side Rendering) • SSR(Server-side Rendering) •
PPR(Partial Prerendering) ▪ そもそもNext.jsが潮流を作っている 5 Header Sidebar Footer 購入数選択 商品説明
強力なエコシステム ▪ Reactの豊富なライブラリ 群を使用可能 ▪ 大抵の周辺ツール がサポートしている • バンドラ •
Linter • 開発サーバー 6 …
個人開発でBestか? 個人開発でBestとは限らない ▪ 不要なレンダリング の複雑性 ▪ ライブラリ更新 が大変 7
不要なレンダリングの複雑性 ▪ SSRは不要な場合も多い • 初期表示に動的コンテンツがないと意味がない ▪ 手間を生む • サーバー運用 •
AIが最適解を選ばない • 脆弱性も生みやすい(React2Shell) 8 Header Sidebar Footer 購入数選択 商品説明 不要 AIが誤用
ライブラリ更新が大変 ▪ 使ったライブラリ は更新が必要 • 少なくとも脆弱性対応は必要 • 一度サボると更に大変に… ▪ Reactはライブラリ使用前提な部分もある
• 特に状態管理 9 … 使ったら更新必須
Web Components 使いませんか?
Web Componts Web標準で構成されたコンポーネント機構 ▪ 素のブラウザ上で動作 • template + Shadow DOM
▪ CSR相当の役回りが可能 11 Web Components
Lit Web Componentsの薄いラッパーライブラリ ▪ 記述の煩雑さを軽減 • デコレーター による記法提供 • 簡易的な状態管理機構の提供
▪ 外部依存がない • Litのみの更新でok 12
デプロイ時のレンダリング PPRは好きなテンプレートエンジンでok ▪ ejs ▪ tmpl • Goのテンプレートエンジン ▪ PHP
13 テンプレートエンジン
この構成のメリット ▪ 依存が極めて少ない • 基本的にLitとテンプレートエンジンのみ • 加えてLinter、バンドラが入る程度 ▪ 維持コスト が低い
• 静的配信だけなら無料で済む ▪ CSR・PPRのコード上での区別が容易 • AIの書いたコードの読解が楽 14
採用例
Go Proposal Weekly Digest ▪ Go言語本体への機能提案まとめ ▪ 週次更新 16 https://go-proposal-weekly-digest.mazrean.com/
まとめ ▪ Next.js、個人開発には複雑過ぎない? ▪ Web Componentsで最小限の構成が可能 • テンプレートエンジンを組み合わせる • Litで記述も容易にできる
▪ 実際にいくつか開発してみている • Go Proposal Weekly Digest • もっと動的なサービスも作れる 17