このプロジェクトについて
MermaidXは、Mermaid図をSVG、PNG、PDF、JPEG、BMP、TGA、ASCIIアートに変換するためのPythonライブラリおよびCLIです。実際のMermaid v11 JavaScriptライブラリを、偽のDOMを備えた組み込みのQuickJS-ngエンジン(またはオプションのV8)内で実行し、ブラウザ、Node.js、npm、システム依存関係を不要にします。これにより、Puppeteer経由でヘッドレスChromeを使用する公式のmermaid-cliよりも高速かつ軽量になります。
主な機能は次のとおりです。
- システム依存関係ゼロ:`pip install mermaidx`でインストール可能。Python 3.9+用のビルド済みホイールを提供。
- 複数のバックエンド:デフォルトのQuickJS-ng、オプションのV8(2~4.5倍高速)、および`mmdr`パッケージ経由のネイティブRustバックエンド。
- 統一API:`render()`は遅延評価されキャッシュされる`Diagram`オブジェクトを返し、SVG、PNG、PDF、ASCII、生のRGBA、numpy配列、ファイルへの保存のためのメソッドを備えます。
- CLI:`mermaidx -i input.mermaid -o output.svg`。スケーリング、テーマ、PDF形式、CSS、フォント埋め込みのオプションがあります。
- Jupyter統合:ノートブック内で図が自動的に表示されます。
- CPU負荷の高いワークロード向けに`render_many()`による並列バッチレンダリング。
- 純粋なPythonパッケージ`termaid`によるASCII出力。
- ブラウザに正確なSVGのためのフォント埋め込み(オプションの追加機能)。
- 任意のSVG文字列をラスタライズする`svg_to_png()`などの低レベルユーティリティ。
MermaidXは、フローチャート、シーケンス図、クラス図、状態図、ER図、ガントチャート、円グラフ、gitグラフなど、すべてのMermaid v11図タイプをサポートしています。MITライセンスで活発にメンテナンスされており、公式のMermaid CLIバイナリとの衝突を避けるために`mmdc`から改名された経緯があります。
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.