実行時依存なしでMermaidの図表テキストをSVGに変換する、小型の同期レンダラー。
lukilabs/beautiful-mermaid
DOM依存なしでMermaid図をテーマ対応のSVGまたはASCII/Unicodeテキストに変換するTypeScriptライブラリ。
- スター
- 11,200
- フォーク
- 411
- 未解決の Issue
- 93
- 最終コミット
- 6 か月前
これは何?
beautiful-mermaidは、Mermaidの図表ソースをSVG文字列またはプレーンテキストのASCII/Unicodeアートに変換します。フローチャート、状態図、シーケンス図、クラス図、ER図に加え、棒グラフ、折れ線グラフ、複合系列に対応したXYチャートもサポートします。
同期的にレンダリングするため、useMemoを使えばReactのレンダー中にSVG出力を直接生成できます。テーマは背景色と前景色の2色をベースに、アクセントカラーと控えめな色を任意で設定できます。色はCSSカスタムプロパティとして公開されるため、再レンダリングせずにテーマを切り替えられます。また、15種類の組み込みテーマを備え、任意のShiki(VS Code)テーマを図表の色に変換できます。
ASCIIレンダラーはGoプロジェクトのmermaid-asciiをTypeScriptに移植し、シーケンス図、クラス図、ER図への対応を追加したものです。Unicodeの罫線文字または純粋なASCIIで出力でき、ターミナル向けにANSIまたはHTMLで色を付けることもできます。
主な機能
- 01フローチャート、状態図、シーケンス図、クラス図、ER図、XYチャートをレンダリング
- 02Web UI向けのSVG、またはターミナル向けのASCII/Unicodeテキストを出力
- 03Reactのレンダー中にuseMemoと組み合わせて使える同期API
- 042色をベースにしたテーマと、15種類の組み込みテーマを提供
- 05fromShikiThemeを通じて任意のShiki/VS Codeテーマを利用可能
- 06CSSカスタムプロパティによるリアルタイムのテーマ切り替え
ユースケース
- AIチャットやエージェントのインターフェースに、生成したフローチャートや図表を表示する
- 非同期読み込みなしでReactアプリにMermaid図表を表示する
- CLIツールやターミナル出力にアーキテクチャ図や状態図を表示する
- 既存のエディターやアプリのテーマに図表の色を合わせる
クイックスタート
- 1
npmでパッケージをインストールする
npm install beautiful-mermaid - 2
コード内でフローチャートをSVGにレンダリングする
使う前に知っておきたいこと
- レンダリングは同期的ですが、ELK.jsのレイアウト処理はFakeWorkerのバイパスを介して実行されるため、非常に大きな図では時間がかかる場合があります。
- READMEに記載されている図の種類は6種類のみです。それ以外のMermaidの図の種類には対応していません。
トピック
よくある質問
- beautiful-mermaid とは?
- DOM依存なしでMermaid図をテーマ対応のSVGまたはASCII/Unicodeテキストに変換するTypeScriptライブラリ。 beautiful-mermaidは、Mermaidの図表ソースをSVG文字列またはプレーンテキストのASCII/Unicodeアートに変換します。フローチャート、状態図、シーケンス図、クラス図、ER図に加え、棒グラフ、折れ線グラフ、複合系列に対応したXYチャートもサポートします。
- beautiful-mermaid は無料で使えますか?ライセンスは?
- beautiful-mermaid は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- beautiful-mermaid は今もメンテナンスされていますか?
- 半年以内に更新あり。beautiful-mermaid の最終コミットは 2026年5月6日 です。
- beautiful-mermaid は何に使えますか?
- AIチャットやエージェントのインターフェースに、生成したフローチャートや図表を表示する 非同期読み込みなしでReactアプリにMermaid図表を表示する CLIツールやターミナル出力にアーキテクチャ図や状態図を表示する 既存のエディターやアプリのテーマに図表の色を合わせる
- beautiful-mermaid のインストール方法は?
- npmでパッケージをインストールする: npm install beautiful-mermaid コード内でフローチャートをSVGにレンダリングする
- beautiful-mermaid はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/lukilabs/beautiful-mermaid
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
数値テキストからASCIIグラフやスパークラインなどを生成するCLI。
短いJSON仕様から、アニメーション付きで操作でき、SVG・PNG・GIF・MP4に書き出せる図を生成するClaude向けコーディングエージェント用スキル。
React 19とStyleXを基盤とした、150以上のアクセシブルなコンポーネント、テーマ、CLIを備えるオープンソースのReactデザインシステム。
ドラッグ操作で点を編集し、コマンドパネルでSVG pathデータを作成・編集できるブラウザベースのビジュアルエディター。
Reactとcytoscape.jsで構築された、プレーンテキストのアウトラインをフローチャートや図に変換するWebアプリ。