awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
terrastruct avatar

terrastruct/d2

0
View on GitHub↗
23,083 星标·616 分支·Go·mpl-2.0·10 次浏览d2lang.com↗

D2

This project is a diagram-as-code tool that transforms declarative text scripts into professional visual representations. It functions as a technical documentation generator, allowing users to define nodes, connections, and hierarchical relationships through a domain-specific modeling language that integrates directly into version-controlled developer workflows.

The tool distinguishes itself through a highly modular architecture that decouples diagram definitions from spatial positioning. It features a pluggable layout engine that supports multiple arrangement algorithms, alongside a styling system inspired by web development that enables global theme management and reusable class-based properties. Users can further customize their output with a sketch-like aesthetic, interactive metadata, and the ability to embed rich content such as markdown and code snippets directly into diagrams.

Beyond basic rendering, the system provides comprehensive support for large-scale documentation projects through file modularization, content parameterization, and automated code formatting. It includes a reactive file watcher for live updates and supports a wide range of output formats, including vector graphics, raster images, and terminal-based text diagrams. The tool also facilitates the creation of interactive presentations and sequential animations to illustrate complex technical workflows.

The software is distributed as a command-line utility designed for integration into automated build pipelines and development environments.

Features

  • Text-to-Diagram Generators - Transforms structured text descriptions into visual diagrams by interpreting declarative syntax.
  • Command Line Interfaces - Provides a command-line interface for executing tasks, integrating with build pipelines, and supporting developer workflows.
  • Technical Documentation - Generates professional visual diagrams from structured text scripts to document system architectures.
  • Documentation Generators - Creates software architecture models and system maps from version-controlled text files.
  • Version-Controlled Documentation - Manages visual documentation as version-controlled text files to ensure consistency across teams.
  • Diagramming Engines - Renders visual diagrams from structured text files using a domain-specific language.
  • Declarative Visualization Languages - Provides a domain-specific language for defining nodes and connections that render into interactive visual representations.
  • Domain Specific Languages - Uses a specialized domain-specific language to define nodes, edges, and hierarchical relationships for diagram generation.
  • Graph Layout Engines - Supports pluggable layout engines that decouple diagram definitions from spatial positioning logic.
  • Diagramming Tools - Declarative language for generating complex diagrams from text.
  • Multi-Format Output Renderers - Translates internal graph models into diverse output formats including vector graphics, raster images, and text diagrams.
  • Software Architecture - Provides specialized syntax for creating hierarchical system diagrams to visualize software structures.
  • Intermediate Representations - Normalizes input scripts into a unified intermediate graph representation to facilitate consistent cross-format rendering.
  • Automatic Diagram Renderers - Converts structured text definitions into plain text visual representations for terminal viewing.
  • Plugin Architectures - Supports a plugin architecture to extend core functionality by connecting to external editors and data sources.
  • Diagramming Standards - Supports standard notations like class and sequence diagrams for accurate technical system representation.
  • Diagram Exporting - Supports export to various standard image and document formats for publishing compatibility.
  • Graph Layout Engines - Allows users to switch between different layout algorithms to optimize node and link positioning.
  • Diagramming Language Tooling - Offers syntax highlighting, automatic formatting, and real-time error reporting to improve productivity during diagram creation.
  • Technical Presentation Tools - Compiles text-based diagram definitions into interactive slide decks for technical presentations.
  • Interactive Diagramming Libraries - Enables embedding of interactive metadata like tooltips and hyperlinks within complex diagrams.
  • Modularization Utilities - Facilitates large-scale documentation projects by allowing file imports and variable usage.
  • Content Embedding Tools - Supports embedding rich content like markdown, code snippets, and images directly into diagram layouts.
  • CSS Class-Based Styling - Provides a CSS-inspired class-based system for managing global themes and reusable visual properties in diagrams.

Star 历史

terrastruct/d2 的 Star 历史图表terrastruct/d2 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

常见问题解答

terrastruct/d2 是做什么的?

This project is a diagram-as-code tool that transforms declarative text scripts into professional visual representations. It functions as a technical documentation generator, allowing users to define nodes, connections, and hierarchical relationships through a domain-specific modeling language that integrates directly into version-controlled developer workflows.

terrastruct/d2 的主要功能有哪些?

terrastruct/d2 的主要功能包括:Text-to-Diagram Generators, Command Line Interfaces, Technical Documentation, Documentation Generators, Version-Controlled Documentation, Diagramming Engines, Declarative Visualization Languages, Domain Specific Languages。

terrastruct/d2 有哪些开源替代品?

terrastruct/d2 的开源替代品包括: plantuml/plantuml — PlantUML is a text-to-diagram generator that translates human-readable markup into structured graphical… mermaid-js/mermaid — This project is a client-side rendering engine that transforms declarative, text-based syntax into visual diagrams… chartdb/chartdb — ChartDB is a database schema visualizer and entity-relationship diagramming platform designed to help developers… mingrammer/diagrams — Diagrams is a diagram-as-code framework and infrastructure mapping tool used to generate system architecture… awslabs/diagram-as-code — This project is a library for generating visual architecture diagrams and network topologies directly from… microsoft/code-with-engineering-playbook — This project is a software engineering playbook providing a collection of standardized guidelines and processes for…

D2 的开源替代方案

相似的开源项目,按与 D2 的功能重合度排序。
  • plantuml/plantumlplantuml 的头像

    plantuml/plantuml

    13,093在 GitHub 上查看↗

    PlantUML is a text-to-diagram generator that translates human-readable markup into structured graphical representations. It functions as a diagram-as-code tool, allowing users to create and maintain technical documentation, architectural models, and flowcharts by decoupling diagram content from visual layout. The project distinguishes itself through a comprehensive rendering pipeline that processes domain-specific markup into various output formats, including vector and raster graphics. It utilizes a graph-based layout engine to calculate spatial positioning, while a declarative styling layer

    Javadiagramdiagram-as-codediagrams
    在 GitHub 上查看↗13,093
  • mermaid-js/mermaidmermaid-js 的头像

    mermaid-js/mermaid

    88,676在 GitHub 上查看↗

    This project is a client-side rendering engine that transforms declarative, text-based syntax into visual diagrams directly within the browser. By utilizing a domain-specific language, it allows users to define complex structures—such as software architectures, process flows, and system behaviors—without the need for manual layout configuration. The library functions as a browser-based runtime that parses these definitions into intermediate abstract syntax trees, which are then processed by specialized engines to generate high-fidelity, resolution-independent graphics. The system distinguishe

    TypeScriptdiagramsdiagrams-as-codedocumentation
    在 GitHub 上查看↗88,676
  • chartdb/chartdbchartdb 的头像

    chartdb/chartdb

    21,286在 GitHub 上查看↗

    ChartDB is a database schema visualizer and entity-relationship diagramming platform designed to help developers understand, design, and document complex data architectures. It functions as a visual workspace where users can create and modify database schemas, define table attributes, and map foreign key relationships. By parsing database metadata or SQL scripts, the tool generates interactive diagrams that provide a clear overview of structural interdependencies and data associations. The platform distinguishes itself through its focus on automated documentation and schema synchronization. I

    TypeScriptdatabasedbdb-migration
    在 GitHub 上查看↗21,286
  • mingrammer/diagramsmingrammer 的头像

    mingrammer/diagrams

    42,356在 GitHub 上查看↗

    Diagrams is a diagram-as-code framework and infrastructure mapping tool used to generate system architecture visualizations via Python code. It functions as a programmatic wrapper for Graphviz, allowing users to define cloud services and their interconnections to create structured architectural layouts. The project specializes in cloud architecture visualization by mapping software components to a library of provider-specific icons. This approach enables the management of system designs within version control to track architecture changes over time. The library provides capabilities for conf

    Pythonarchitecturediagramdiagram-as-code
    在 GitHub 上查看↗42,356
查看 D2 的所有 30 个替代方案→