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
280
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
320
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
230
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
430
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
680
Go Proposal Weekly Digestの作り方 / Go Connect #11
mazrean
0
360
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
830
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
670
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
640
KessokuのDIにおけるgoroutineスケジューリング / golang.tokyo #41
mazrean
0
750
Other Decks in Programming
See All in Programming
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.7k
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
160
Groovy as a human and AI friendly programming language
paulk
0
120
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
170
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
7k
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
1
200
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
2
1k
AI時代のシニアエンジニアとは
yosuke_furukawa
PRO
11
8.3k
Findy - エンジニア向け会社紹介/Findy Company Deck
findyinc
6
400k
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
1.9k
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
220
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
1.1k
Featured
See All Featured
Amusing Abliteration
ianozsvald
1
360
The Art of Programming - Codeland 2020
erikaheidi
57
14k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
640
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.6k
For a Future-Friendly Web
brad_frost
184
10k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
70
67k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
Statistics for Hackers
jakevdp
799
230k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
340
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
The Limits of Empathy - UXLibs8
cassininazir
2
730
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