Skip to content

draw-io-skill v0.2.0 リリース記事

draw-io-skill v0.2.0 は、draw.io 図をリポジトリ運用の中で扱うためのワークフローを、ひとつ上の完成度まで押し上げたリリースです。

今回の更新では、

  • shape-aware な SVG lint の強化
  • fixture ベースの回帰検証の拡張
  • 英日対応の公開 docs
  • docs-backed な release note ミラー

がまとまって入りました。

draw-io-skill structure

まず何がうれしいのか

このリポジトリの強みは、draw.io を「図を書いて終わり」ではなく、

  1. .drawio を編集ソースとして保つ
  2. png / svg / pdf / jpg に export する
  3. SVG lint をかける
  4. docs や PR に載せる前に崩れを見つける

という流れまで含めて扱えるところです。

v0.2.0 は、その中でも特に lint 精度公開導線 の両方が大きく伸びたリリースでした。

shape-aware lint が一気に実用寄りになった

今回の中心は scripts/check-drawio-svg-overlaps.mjs の拡張です。

追加・強化された主な観点は次のとおりです。

  • 大きなフレーム枠に対する edge-rect-border
  • 非矩形 shape に対する edge-shape-border
  • 矩形と非矩形 shape の接触を拾う rect-shape-border
  • companion .drawio を使った shape-aware な text-overflow

特に面白いのは、SVG だけではなく .drawio 側のメタデータも併用していることです。
これによって documenthexagonparallelogramtrapezoid といった shape に対して、単純な矩形ベースよりも現実に近い lint ができるようになっています。

図のレビューでは、

  • 線がフレームや図形の縁をなぞっている
  • テキストが一見入っているようで実は窮屈
  • 矩形以外の shape で当たり判定が甘い

といった問題が起きがちです。今回の release は、まさにそのへんを詰めてきた印象です。

fixture が増えて、壊れにくくなった

lint ルールが増えても、次の変更で壊れてしまっては意味がありません。

そこで v0.2.0 では、検出ルールごとの regression fixture も追加されています。

さらに、これらを検証する script も入りました。

この構成のおかげで、「本来エラーになるべき図が、ちゃんとエラーになるか」を固定化できます。
リポジトリとしての信頼性が一段上がったポイントです。

npm run verify で release 前チェックをまとめて回せる

今回の release では package.json の verify 導線も整理されました。

npm run verify では次をまとめて回せます。

  • Node スクリプトの syntax check
  • fixture verifier の実行
  • uv 経由の Python syntax check
  • VitePress docs build

実際の release 作業でも、このコマンドをローカルで実行してから公開しています。

bash
npm run verify

release 前に何を見ればいいのかが 1 コマンドにまとまっているのは、あとから触る人にもかなり親切です。

公開 docs と Pages がそろった

v0.2.0 では docs 面もかなり整いました。

公開サイトには次のような導線があります。

  • Getting Started
  • Showcase
  • Architecture
  • Workflow
  • Export And Lint
  • Reference Guides
  • Troubleshooting
  • Release Notes

しかも英語と日本語の両方に対応しています。

ワークフロー面でも、

が整備され、docs が GitHub Pages に公開される形まで固まりました。

今回の release notes も GitHub release 本文だけで終わらせず、docs 側に英日ミラーを持たせています。

showcase 資産が増えて、見本として使いやすくなった

今回の release では、機能だけでなく「何を見本に使えばいいか」もわかりやすくなっています。

代表的な資産は次のとおりです。

  • assets/draw-io-skill-structure.drawio*
  • assets/draw-io-skill-structure-shapes.drawio*
  • assets/draw-io-skill-structure-icons.drawio*
  • assets/draw-io-skill-structure-icons.ja.drawio*
  • assets/draw-io-skill-structure.ja.drawio*

特に Showcase ページは、次の 3 方向で見本が分かれているのが良いです。

  • リポジトリ構成を説明する図
  • lint レビュー用の図
  • アイコン入りの見栄え重視な図

「サンプルがある」だけでなく、用途ごとに見本が分かれているので導入しやすくなっています。

実物を見るとわかりやすいサンプル

1. shape-aware lint review

Shape-aware lint review sample

2. 日本語版の構成図

draw-io-skill structure ja

3. アイコン入りの showcase

draw-io-skill structure icons ja

どういう人に刺さるか

今回の v0.2.0 は、特に次のような人に向いています。

  1. draw.io を source of truth として管理したい人
  2. 図の品質確認を CI に寄せたい人
  3. Codex や Claude Code の中で図も扱いたい人
  4. docs と release をセットで運用したい人

draw.io を単なる添付画像ではなく、再編集・再 export・再検証できる成果物として扱いたい場合に、かなり参考になる構成です。

確認した公開状態

今回の v0.2.0 公開時には、少なくとも次の点まで確認しています。

  • npm run verify のローカル成功
  • GitHub Actions CI の成功
  • GitHub Actions Pages の成功
  • 英日 release notes ページの live URL が 200 を返すこと
  • v0.2.0 GitHub release 本文に docs ミラーへのリンクが入っていること

単に tag を打って終わりではなく、公開導線まで含めて整えた release になっています。

バージョン番号の注意点

Git tag は v0.2.0 ですが、package.jsonversion1.0.0 のままです。

しかも private: true なので、npm package の公開版バージョンではありません。
この repo では、現時点では Git tag が公開リリースの識別子 と考えるのが自然です。

関連リンク

  1. GitHub Release v0.2.0
  2. Compare v0.1.0...v0.2.0
  3. Docs Release Notes (English)
  4. Docs Release Notes (Japanese)
  5. Showcase
  6. Export And Lint

まとめ

draw-io-skill v0.2.0 は、draw.io を使う repo を「実験用」から「運用可能」へ押し上げるタイプのリリースでした。

特に、

  • shape-aware lint の強化
  • fixture ベースの回帰検証
  • docs と release mirror の整備
  • GitHub Pages まで含めた公開導線

の 4 点がきれいにそろっています。

draw.io 図を、画像ではなく再編集可能な成果物として扱いたい人には、かなりいい更新だと思います。

MIT License で公開しています。