开发者生态
morning
Show HN:Reladraw – 一种图表语言,您可以在其中决定放置东西的位置
2026-09-27
1 阅读
约4分钟阅读
jpwalsh234
字号:
reladraw reladraw 是一种用于图表的文本语言,您可以在其中说出事物的去向。在浏览器中尝试一下→我希望能够创建自定义的、富有表现力的图表,我可以在其中决定如何排列图表,但又不会像在draw.io 中手动绘制那样效率低下。例如,这是在draw.io中绘制的图:这是同一个图,但是用reladraw(examples/arch.reladraw)编写。为什么不选择《美人鱼》或《draw.io》? Mermaid、Graphviz 和 D2 让您声明框和连接,然后为您确定位置。如果您心中有特定的图片,那么这些工具就不是合适的。另一方面,像draw.io或Excalidraw这样的工具允许绝对放置,但这意味着更多的工作,无论是人类点击和拖动节点还是代理重新计算坐标和编辑详细的XML源代码文件。 reladraw 介于这两个极端之间,旨在拥有图表语言(如 Mermaid)的优势,同时还具有可通过 draw.io 获得的表现力和自定义位置。位置是相对的,因此您不必手动选择坐标。例如:节点应用程序“Web应用程序”节点app.ui“接口”节点app.api“API”在app.ui节点存储“数据库”应用程序级别的右侧与应用程序边缘app.api->存储“查询”从:右到:左另请参阅SYNTAX.md和examples/。安装 npm install -g reladraw reladraw 图.reladraw -o 图.svg 或者从克隆中安装,它还会为您提供示例: npm install && npm run build node dist/cli.js Examples/arch.reladraw -o out.svg 与代理一起使用 要安装技能以让您的代理知道如何使用 reladraw: npx Skills add reladraw/reladraw -g 为您使用的每个代理安装它(Claude Code, Codex、Cursor、Copilot 等),每个都有自己的技能目录。关闭 -g 仅将其安装到当前项目中。要仅为一个代理安装它,请使用 -a 命名它: npx Skills add reladraw/reladraw -g -a claude-code 这会在运行该技能时为您提供一份技能副本,因此您需要重新运行该命令才能在有新版本时获取最新技能。状态版本0.8.0。早期阶段,但有效。解析器、布局引擎和 SVG 渲染器都是用 TypeScript 编写的,运行时依赖性为零。有一个命令行工具可以将 .reladraw 文本文件转换为 SVG。该语言还不稳定,因此预计语法会发生变化。许可证 Apache-2.0。请参阅许可证。许可证涵盖代码,而不是名称。它不授予“reladraw”、项目徽标或项目的其他标记的任何权利。请参阅注意事项。欢迎贡献问题。特别有用的是您无法在 reladraw 中表示的图表。虽然语言仍在快速变化,但问题比拉取请求更有帮助。请参阅 CONTRIBUTING.md 。
这篇文章对您有帮助吗?
订阅66必读
每日精选科技资讯,直达你的邮箱