TALA
d2
TALA | d2 | |
---|---|---|
3 | 92 | |
177 | 15,867 | |
2.8% | 1.6% | |
5.0 | 9.7 | |
14 days ago | 6 days ago | |
Shell | Go | |
GNU General Public License v3.0 or later | Mozilla Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
TALA
- D2 Playground
-
Architecture diagrams should be code
This is a problem with the languages, not a fundamental flaw. Manipulating text has a much higher ceiling than drag and drop, in terms of speed and simplicity. Every programmer has their own ecosystem for manipulating text. I can grep, version control, diff, jump with Vim key bindings, etc.
The layout engines are very hard. We've been making https://terrastruct.com/tala for over 2 years now. At first it seemed dubious whether it was even possible to beat Graphviz, but we've been designing it to emulate how diagrams might look on a whiteboard drawn by humans. That's a very different heuristic than the theoretical hierarchical cross-minimizations that previous algorithms strive for, and it's yielded good results for a subset of diagrams.
-
D2 language, open source alternative to PlantUML
https://github.com/terrastruct/TALA
(apologies for this path. trying to strike the balance of making it findable for those who search for it while hidden to those who just want free.)
d2
- NMAP-formatter: convert NMAP results to HTML, CSV, JSON, graphviz (dot), SQLite
- Penrose – Penrose
-
Pikchr: A PIC-like markup language for diagrams in technical documentation
While not embedded in markdown, I like d2 [1]. I can use it with org-babel to embed and view the diagrams on emacs. After using graphviz for years, the visual output seems more polished to me. With that said, I want to give pikchr a try.
[1]:https://d2lang.com/
- Ask HN: How do you build diagrams for the web?
-
Documentation as Code for Cloud - C4 Model & Structurizr
In the next post I'll deep-dive into the D2 language which also has a huge set of features. Stay tuned.
- Inkscape Cloud Architect
-
Nomnoml
That site is created by the maintainers of D2[1], so it might be biased, but I still think D2 has the friendliest syntax of the bunch, including nomnoml.
[1]: https://d2lang.com/
- Software Architecture Tools
- D2: Declarative Diagramming
-
Architecture diagrams enable better conversations
I've been using https://structurizr.com/ to automatically generate C4 diagrams from a model (rather than drawing them by hand). It works well with the approach for written documentation as proposed in https://arc42.org/. It's very easy to embed a C4 diagram into a markdown document.
The result is a set of documents and diagrams under version control that can be rendered using the structurizr documentation server (for interactive diagrams and indexed search).
I also use https://d2lang.com/ for declarative diagrams in addition to C4, e.g., sequence diagrams and https://adr.github.io/ for architectural decision records. These are also well integrated into structurizr.
What are some alternatives?
d2-docs - Language documentation and blog for D2.
mermaid - Generation of diagrams like flowcharts or sequence diagrams from text in a similar manner as markdown
keenwrite-themes - Document typesetting configurations using ConTeXt
C4-PlantUML - C4-PlantUML combines the benefits of PlantUML and the C4 model for providing a simple way of describing and communicate software architectures
flowchart-fun - Easily generate flowcharts and diagrams from text ⿻
d3 - Bring data to life with SVG, Canvas and HTML. :bar_chart::chart_with_upwards_trend::tada:
text-to-diagram-site - Compare syntax, layouts, outputs between languages for generating diagrams with text.
Mermaid - Edit, preview and share mermaid charts/diagrams. New implementation of the live editor.
excalidraw - Virtual whiteboard for sketching hand-drawn like diagrams
diagrams - :art: Diagram as Code for prototyping cloud system architectures
c4-notation - Technical resources for using the C4 model for visualizing software architecture.
mermaid-cli - Command line tool for the Mermaid library