Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
そのドキュメント、自動化しませんか?
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
yuk
July 20, 2026
Technology
850
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
プロダクトエンジニアに必要な「いい感じ」に作る能力 〜たくさん作れる時代に、どこまで作るかの決め方〜
jnishime_dresscode
2
1.4k
AI 駆動 Terraform 開発/SRE_BizReach_MIXI_2
visional_engineering_and_design
3
1.9k
omasushiというライブラリを作った
polidog
PRO
0
150
Driving AI Adoption Using In-House GPUs to Serve Qwen
po3rin
2
470
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
230
「図書館」という名前のままでいいのか -Code4Lib JAPANカンファレンス2026 アンカンファレンス報告- / Code4Lib JAPAN Conference 2026: Unconference Report
ykiyota
0
120
Podは生きているのにGoだけが落ちる:GOGCとGOMEMLIMITで追うInvisible OOM Killの謎
tkc66buzz
1
210
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
1
210
Bet AI Day 2026丨How We Bet AI: AIとともに働く場をつくる
layerx
PRO
2
2.8k
Claude Code本って、 読む必要あるの?
oikon48
1
150
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
0
890
20260903 Tokyo Jazug Night #62 | Azure エンジニアよ、 その環境は本当にセキュアか?
olivia_0707
1
640
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Scaling GitHub
holman
464
140k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
570
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
A Tale of Four Properties
chriscoyier
163
24k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Thoughts on Productivity
jonyablonski
76
5.4k
4 Signs Your Business is Dying
shpigford
187
23k
KATA
mclloyd
PRO
35
15k
Automating Front-end Workflow
addyosmani
1369
210k
GraphQLとの向き合い方2022年版
quramy
50
15k
The Cult of Friendly URLs
andyhume
79
7k
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 ありがとうございました