Pele工具发布:轻量级Mermaid转SVG渲染器

开发者Pele推出轻量级Mermaid转SVG渲染器。该工具零依赖,打包体积仅230kB,渲染耗时低至0.05毫秒,支持通过CSS变量自定义主题,无需重新渲染即可生效。

开发者 Pele 推出了一款名为 Pele 的工具,旨在将 Mermaid(俗称“美人鱼语法”)图表文本直接渲染为 SVG 格式。该项目强调轻量级与可主题化特性,支持通过 CSS 变量自定义颜色和字体。

包体积降至230kB

核心功能与示例

Pele 允许用户编写标准的 Mermaid 流程图代码并生成矢量图形。以下是一个基本的流程表示例:

flowchart TD
  A[Mermaid text] --> B{Flowchart?}
  B -- Yes --> C[Pele]
  B -- No --> D[Mermaid]
  C --> E([SVG])
  D --> E

在样式定制方面,Pele 采用 CSS 变量机制。当颜色配置发生变化时,无需重新进行完整的渲染过程即可生效。示例代码如下:

.pele {
  --pele-bg: #fffcf0;
  --pele-fg: #100f0f;
  --pele-muted: #6f6e69;
  --pele-line: #100f0f;
  --pele-surface: #f2f0e5;
  --pele-surface-alt: #e6e4d9;
  --pele-border: #cecdc3;
}

性能对比:Pele vs. 传统方案

根据官方提供的数据,Pele 在包体积、渲染速度及依赖管理上相较于未使用该工具的方案具有显著优势:

指标 Pele 无 Pele (传统方案)
打包大小 (gzip) 230 kB 1.6 MB
渲染时间 0.05 到 0.3 毫秒 6–82 ms
直接依赖数 0 23
小屏幕适配策略 调整布局 缩放图表
主题实现方式 CSS 变量 主题配置

安装与集成

开发者可通过主流包管理器安装 Pele:

npm install pele
pnpm add pele
yarn add pele
bun add pele

集成过程中,调用 render API 获取生成的 SVG 字符串,并将其插入页面 DOM 中即可。示例用法如下:

import { render } from 'pele';

const { svg } = render(`flowchart LR
  A[Mermaid text] --> B[SVG]`);

document.querySelector('#diagram').innerHTML = svg;

评论 0

0/500

评论需审核后展示,请文明发言

💬
还没有评论,来说两句

相关阅读