protobuf を plant UML に変換する protoc-gen-pu を作りました。

Dec 24, 2022 00:14 · 23 words · 1 minute read

今関わっているプロジェクトでは、テーブルスキーマを Protocol Buffers で定義してます。

protobuf を使うと、可読性の高いシンタックスに加え plugin の仕組みが整備されていて自動生成を組みやすく、カスタムオプション(extension)の仕組みで独自のアノテーションを付与できたりと、痒い所に手が届くツールで非常に気に入っています。

一方で、プロジェクト関係者全員が protobuf だけをみて議論できる状態ではないため、プロジェクト公式のナレッジベースにテクニカルドキュメントを記載する時には ERD であることが求められています。

テーブルスキーマを管理する protobuf と、テクニカルドキュメントの ERD を二重に管理する必要が発生しており、いささか面倒です。

というわけで、変換するための protoc plugin を実装しました。

https://github.com/lp-peg/protoc-gen-pu