logo hsb.horse

Architecture Decision Record

ツール一覧の管理方式

ツール一覧はYAMLのContent Collectionで管理し、個別ツールページは実装で作る。

採用 #tools #content #architecture

ツール一覧の管理方式

決定

  • /tools の一覧は Content Collection を使用し、YAML で管理する。
  • YAML 1件につき 1ツールのメタ情報を持つ。
  • 多言語は YAML 内の title / description に言語別文字列を持たせる。
  • /tools/<slug> のような個別ツールページは実装で作成する(一覧データから自動生成しない)。
  • url/ で始まる場合は内部リンク、そうでない場合は外部リンクとして扱う。
  • カテゴリは柔軟に運用する(enum で固定しない)。

背景

ツールページは「UUID生成」など機能実装が必要なため、Markdown での自動生成には向かない。一方で /tools の一覧にはタグやカテゴリでの絞り込みが必要で、更新が簡単な仕組みが求められた。

代替案

  • Markdown 管理: 本文が不要で冗長。
  • TS/JSON 管理: 型は付けやすいが運用がコード寄りになる。
  • 外部CMS: 個人サイトには過剰。

影響

  • 一覧は YAML の更新で反映できる。
  • ツール本体は自由に実装できる。
  • 検索/フィルタ用に categorytags を利用できる。