Netherlandsemicklei/dot
Go package for writing graph descriptions using the Graphviz DOT or Mermaid language
🧩 dot - Package Go nhỏ gọn cho Graphviz DOT và Mermaid
Viết mô tả đồ thị DOT và Mermaid bằng Go, không cần dựng file thủ công.
dot là package Go hỗ trợ tạo mô tả bằng ngôn ngữ DOT của Graphviz và Mermaid. Dùng cho trực quan hoá dependency, workflow, hoặc architecture diagram. Xuất ra chuỗi DOT hoặc Mermaid, rồi dùng công cụ bên ngoài render.
✨ Điểm nổi bật
- Tạo đồ thị có hướng/không hướng:
dot.NewGraph(dot.Directed)hoặcdot.NewGraph(dot.Undirected). - Chaining cạnh:
g.Node("A").Edge(g.Node("B")).Edge(g.Node("C"))sinhA -> B -> C. - Cạnh hai chiều:
g.Node("D").BidirectionalEdge(g.Node("E"))sinhD <-> E. - Subgraph:
g.Subgraph("cluster")tạo nhóm node, hỗ trợ thuộc tínhstyle="filled". - Initializer toàn cục:
g.NodeInitializer(...)vàg.EdgeInitializer(...)thiết lập mặc định cho toàn bộ node/edge. - Giá trị HTML/Literal:
node.Attr("label", Literal(...))vàgraph.Attr("label", HTML(...)). - Xuất Mermaid:
dot.MermaidGraph(g, dot.MermaidTopToBottom)chuyển đổi DOT sang Mermaid (chỉ Graph và Flowchart). - Mở rộng: package
dot/dotxhỗ trợ xây dựng đồ thị phức tạp.
💡 Vì sao đáng chú ý
dot không phải công cụ render, mà là builder ngôn ngữ DOT/Mermaid trong Go. Phù hợp tích hợp vào pipeline CI/CD sinh diagram tự động, hoặc tool nội bộ phân tích dependency. Hỗ trợ Mermaid giúp dùng trực tiếp trong Markdown/GitHub. Đơn giản, không phụ thuộc nặng, chỉ cần go run và dùng dot -Tpng hoặc Mermaid renderer.
#Go #Graphviz #Mermaid #OpenSource #TiniX
Similar Projects
Discover other similar projects and AI models.
transforming your .proto files into .dot files (and .svg, .png if you happen to have graphviz installed)
all-MiniLM-L6-v2 This is a sentence-transformers(https://www.SBERT.net) model: It maps sentences & paragraphs to a 384 dimensional dense vector space and can be used for tasks like clustering or semantic search. Usage (Sentence-Transformers) Using t...
DNS stub resolver, proxy and router with support for DoT, DoH, DoQ, and DTLS