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
そのドキュメント、自動化しませんか?
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
yuk
July 20, 2026
Technology
930
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
そのドキュメント、自動化しませんか?
yuk
July 20, 2026
Other Decks in Technology
See All in Technology
企画を Software Factory-ready にする——開発が高速になったとき、PdMの仕事はどう変わったか
yachibit
1
100
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
180
Turning Repos into the Product Second Brain with an LLM Wiki
linedevth
0
120
AIカンパニーへの転換を支えた、エンジニアの仕事の再定義
kworkdev
PRO
2
1.4k
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
360
AI × アーキテクト 第1・2章|生成AIの課題とアーキテクトの素養
daidaidai
0
200
sue445's proposals 2026
sue445
0
120
顧客価値を追いかけたら、プライシングにたどり着いた
sansantech
PRO
0
220
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
200
ストレスなくAIと付き合いたい!こんなときどうしてる?
namiki64
4
650
ウォンテッドリーの最近のプロダクトと技術の紹介
stomk
0
300
フィンテック養成勉強会#68
finengine
0
180
Featured
See All Featured
Building Adaptive Systems
keathley
44
3.3k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.4k
A designer walks into a library…
pauljervisheath
211
25k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
A better future with KSS
kneath
240
18k
Believing is Seeing
oripsolob
1
250
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
540
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
270
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
310
A Modern Web Designer's Workflow
chriscoyier
699
190k
Transcript
2026.07.20 そのドキュメント、 ⾃動化しませんか? スプレッドシートのモデル⼀覧を、コードから⾃動⽣成へ 内藤勇介
// ABOUT ⾃⼰紹介 内藤勇介 / Yusuke Naito @yuksew ユースタイルラボラトリー株式会社 ∙
訪問介護向け SaaS「カイビズ」を開発 ∙ バックエンドエンジニア / 設計 ∙ 最近: 介護報酬の請求計算、開発体験の向上 02
// AGENDA 今⽇話すこと 01 スプレッドシートでモデル⼀覧を作るつらみ 02 正本(SSOT)はコードへ。モデル⼀覧は⽣成する 03 同じやり⽅を DB
にも 04 まとめ 03
// BACKGROUND スプレッドシートでモデル⼀覧を作るつらみ 07
// BACKGROUND ドメインモデル⼀覧をスプレッドシートで管理していた • モデルとフィールドの⼀覧(論理名‧型‧必須‧備考) • モデルを追加‧変更するたびに、シートも⼿で更新 • OpenAPI のスキーマをここから⽣成していた
04
// BEFORE 当時の仕組み 自動 スプレッドシート モデル⼀覧 GAS schemas.json 生成 components/schemas
スキーマ定義 openapi.yaml 手動 / AI → HTML API の定義 ⼿書き(または AI) schemaは⾃動⽣成。API のパス定義は⼿書き、シートの更新は⼿作業。 05
// BEFORE つらみ • 5年間の開発でシートが 350 枚を超えた • リポジトリ外なので コミット‧PR
に残らない • 検索‧相互参照に弱い • AI で読み書きがしづらい 06
// APPROACH 正本はコード、⽣成はツールに任せる。 07
// TYPESPEC TypeSpec とは models/common.tsp /** 氏名 */ @OpenAPI.extension( "x-kind",
"valueObject") model StructuredName { familyName: string; givenName: string; displayName: string; } API‧モデルを定義する⾔語 TypeScript ライクに書ける メタ情報も TypeSpec に書ける 08
// BUILD ─ API モデル⼀覧と OpenAPI を⽣成する TypeSpec 定義 openapi:build
models/*.tsp tsp compile + 生成スクリプト モデル⼀覧 OpenAPI tsp compile → OpenAPI(openapi.yaml) build-html.js → API ドキュメント(HTML) build-model-docs.js → モデル⼀覧(models.html) 09
// BUILD 同じやり⽅を DB にも 07
// BUILD ─ DB DB は実物から抽出する migration tbls + Liam
380 本(スキーマの正本) MySQL に migrate → スキーマ抽出 ER図‧DB定義書 tbls k1LoW/tbls 実 DB からスキーマを抽出し、DB定義書を⽣成 Liam @liam-hq/cli 抽出したスキーマから ER図 を⽣成 11
// PIPELINE push 1回で、全部が更新される OpenAPI TypeSpec 定義 models/*.tsp GitHub Actions
openapi:build モデル⼀覧 ER 図 migration GitHub Actions tbls + Liam DB 定義書 GitHub Actions で実⾏ → Cloudflare Pages に公開。 ⽣成物を相互リンクで接続。 12
// BEFORE → AFTER 変わったこと Before After • シート 350枚超を⼿で維持
• push 1回で⽣成‧更新 • コミット‧PR に残らない • コミット‧PR‧差分に乗る • 検索‧AI 連携に弱い • 検索‧AI に強い 13
// TAKEAWAYS まとめ 01 正本はコードに置き、モデル⼀覧は⽣成する 02 push 1 回で、ぜんぶ最新になる 03
AI が読める「正本」に寄せる 14
// THANK YOU ありがとうございました