跳到主要内容

简介

erd-editor 是一款实体关系图(Entity-Relationship Diagram)编辑器。 提供 Web 应用、VS Code 扩展、IntelliJ 插件,以及可嵌入自有页面的 <erd-editor> 自定义元素等多种形式。 所有形式都是同一个编辑器,并使用相同的文档格式。

在 VS Code 中运行的 erd-editor

获取方式

平台安装提供内容
Web 应用erd-editor.io可安装的 PWA、支持离线使用、实时协同编辑
VS CodeMarketplace在自定义编辑器中打开 .erd.json 文件
IntelliJJetBrains Marketplace同一个编辑器,适用于基于 IntelliJ 的 IDE
自有页面npm install @dineug/erd-editor不依赖框架的 <erd-editor> 自定义元素,参见安装

若要在 IDE 中试用,创建一个扩展名为 .erd.json 的空文件并打开即可。

主要功能

  • 在画布上绘制表、列和备注,并用 Zero OneZero NOne OnlyOne N 四种关系类型将它们连接起来。参见开始编辑。索引在表的属性面板中定义。参见 Indexes
  • 支持从 JSONSchema SQLGraphQLDBMLAML 导入已有的 schema。参见导入与导出文件
  • 将图导出为 JSONSchema SQLPNG
  • 按照 Databricks、MSSQL、MariaDB、MySQL、Oracle、PostgreSQL、Snowflake 和 SQLite 八种数据库厂商的语法编写 Schema SQL。参见表相关功能
  • 为 C#、Go、Java、Kotlin、Scala、TypeScript、Drizzle、JPA、Sequelize、SQLAlchemy、TypeORM、AML、DBML 和 GraphQL 十四种目标生成代码。参见代码生成
  • 可视化中以力导向图的形式查看 schema。
  • 通过快速搜索可以在任意位置查找表或执行命令,通过 Undo, Redo 可以逐步浏览编辑历史。
  • 支持实时协同编辑(实验性)。会话基于点对点连接并进行端到端加密,因此不会有任何服务器保存 schema,参与者之间可以看到彼此的光标、焦点和选中内容。在自有页面中,getSharedStore() 可以在任意传输方式上提供相同的操作流。

建议从编辑指南开始。

项目缘起

已有的建模工具没有提供我期望的用户体验。
因此,我发起了这个项目,希望带来极致的用户体验。
本项目的首要目标就是用户的编辑体验。
它将为你带来令人惊喜的编辑体验。