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
310
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WebComponentとSSGで作る 個人開発Webフロントエンド / TechTalk #69
mazrean
March 05, 2026
Transcript
17 slides
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
More Decks by mazrean
See All by mazrean
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
340
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
250
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
460
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
710
Go Proposal Weekly Digestの作り方 / Go Connect #11
mazrean
0
380
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
860
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
690
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
660
KessokuのDIにおけるgoroutineスケジューリング / golang.tokyo #41
mazrean
0
770
Other Decks in Programming
See All in Programming
学びを記事・スライド・Xへ高速展開する― AI-assisted Learning Loopで回すコンテンツ生成術
ochtum
0
210
Modernizing iOS Apps
seyfoyun
0
150
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
830
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
160
Secure Your Coding Agent Like It’s Malware (v1.5) 🇬🇧 @Code.talks 2026
richargh
0
120
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
210
作れるエンジニアから、価値を届けるエンジニアへ
ryunakayama
1
260
GraphQL の onError と Nullability のこれから
quramy
0
210
Claude Code ハーネスDeep Dive – 君はどこまで制御する? -
takateeen_knj
6
5.3k
선언형 햅틱 라이브러리 진동을 소개합니다
l2hyunwoo
1
310
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
2.3k
Rails初心者がパスキーを実装してみて大変だったこと
ktombow
0
170
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
610
WCS-LA-2024
lcolladotor
0
990
The Cost Of JavaScript in 2023
addyosmani
56
10k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
590
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
Color Theory Basics | Prateek | Gurzu
gurzu
1
520
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
70
68k
Speed Design
sergeychernyshev
33
2.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Designing for humans not robots
tammielis
254
26k
Typedesign – Prime Four
hannesfritz
42
3.2k