Compare commits
10 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7472e4e1ac | ||
|
|
ead8ac63e3 | ||
|
|
c366e9326b | ||
|
|
35dd419e11 | ||
|
|
18dc93fdde | ||
|
|
702dc6cd72 | ||
|
|
e4c8cabed2 | ||
|
|
a1f93a20ba | ||
|
|
220fab7105 | ||
|
|
044045b1a9 |
5 changed files with 58 additions and 26 deletions
12
README.md
12
README.md
|
|
@ -7,12 +7,16 @@
|
||||||
|
|
||||||
|
|
||||||
TALA is a diagram layout engine designed specifically for software architecture diagrams,
|
TALA is a diagram layout engine designed specifically for software architecture diagrams,
|
||||||
though it works well in other domains too. TALA is closed-source. This repository is
|
though it works well in other domains too.
|
||||||
primarily for installation instructions. You can also use this repository to report
|
|
||||||
issues, ask questions, and request features.
|
TALA is closed-source. This repository is primarily for installation instructions. You can
|
||||||
|
also use this repository to report issues, ask questions, and request features.
|
||||||
|
|
||||||
To learn more about TALA, please visit
|
To learn more about TALA, please visit
|
||||||
[https://terrastruct.com/tala](https://terrastruct.com/tala).
|
[https://terrastruct.com/tala](https://terrastruct.com/tala). Note that this is a paid
|
||||||
|
layout engine, which requires a license for any commercial use. The license is purchasable
|
||||||
|
in that same link. TALA is free to evaluate, but without a license, will render with a
|
||||||
|
watermark.
|
||||||
|
|
||||||
To compare TALA with other layout engines, please visit
|
To compare TALA with other layout engines, please visit
|
||||||
[https://text-to-diagram.com](https://text-to-diagram.com/?a=d2&layout_a=tala&b=d2&layout_b=dagre&example=chess).
|
[https://text-to-diagram.com](https://text-to-diagram.com/?a=d2&layout_a=tala&b=d2&layout_b=dagre&example=chess).
|
||||||
|
|
|
||||||
Binary file not shown.
31
ci/release/changelogs/v0.4.0.md
Normal file
31
ci/release/changelogs/v0.4.0.md
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
TALA 0.4.0 is a massive improvement in layout positions of a wide range of diagrams.
|
||||||
|
|
||||||
|
<img width="814" alt="Screenshot 2024-07-08 at 2 44 49 PM" src="https://github.com/terrastruct/TALA/assets/3120367/a4d3ca21-a0bc-4771-9c82-ab2fc736a439" />
|
||||||
|
|
||||||
|
#### Improvements 🧹
|
||||||
|
|
||||||
|
- Unconnected nodes and subgraphs are packed more tightly together
|
||||||
|
- Containers of similar sizes with indirect connections are aligned better
|
||||||
|
- Some diagrams escape local minimas better
|
||||||
|
- Nodes connected on both sides are more equidistant to both
|
||||||
|
- Cluster edge labels prioritize not intersecting with other cluster edges
|
||||||
|
- Node labels reposition to avoid overlapping with icons
|
||||||
|
- Node icons reposition to avoid overlapping with fixed labels
|
||||||
|
- Multiple edges between nodes are now ordered (left-right and top-down) by the order they were declared
|
||||||
|
- Edge routes between grid cells avoid node labels
|
||||||
|
- Edge routes consider paths that go through "invisible" nodes and edges (e.g. zero opacity)
|
||||||
|
- When only one of `width` or `height` is specified for a container, nodes will full up better to reduce unused space
|
||||||
|
- Tree structures are built more symmetrically
|
||||||
|
- Containers with edges going into its children are pulled closer together to the other edge endpoint
|
||||||
|
- Clusters of nodes are oriented more reasonably to facilitate better routes
|
||||||
|
- Clusters routes more often converge on a single point in the middle to form the "fork" aesthetic
|
||||||
|
- Node labels are positioned in areas of more space
|
||||||
|
- Edge labels avoid fixed node icon positions
|
||||||
|
|
||||||
|
#### Bugfixes ⛑️
|
||||||
|
|
||||||
|
- Fixes extra warnings that appeared with an invalid token
|
||||||
|
- Fixes panic when edges were defined between actors in different sequence diagrams
|
||||||
|
- Fixes custom label positions and icon positions not working for nodes in tree structures
|
||||||
|
- Disallow edges with different styles (e.g. stroke colors) from sharing routes
|
||||||
|
- Some direct straight routes weren't being considered between two non-diagonal nodes
|
||||||
|
|
@ -1,22 +0,0 @@
|
||||||
#### Features 🚀
|
|
||||||
|
|
||||||
- `tala-seeds` can be specified in the source code through `vars` (see manual for more)
|
|
||||||
|
|
||||||
#### Improvements 🧹
|
|
||||||
|
|
||||||
- ~15% speedup on most large diagrams
|
|
||||||
- Less crossings between edges connecting table columns
|
|
||||||
- Edges route to diamond shape corners more strictly
|
|
||||||
- For manual positions that completely block all paths (e.g. two shapes manually positioned on top of each other), TALA will route edges with a straight line rather than giving up on the layout
|
|
||||||
- Slightly decrease distance between hierarchy nodes
|
|
||||||
- Bin packing algorithm improved to fit subgraphs better
|
|
||||||
- Circle containers fit much better (centered and padding reduced)
|
|
||||||
- Reduced padding for containers with icon/label mix
|
|
||||||
|
|
||||||
#### Bugfixes ⛑️
|
|
||||||
|
|
||||||
- Fixes edge case where a vertical/horizontal edge route completely overlapped another
|
|
||||||
- A common case of cross-container hierarchies appropriately use hierarchy layout
|
|
||||||
- Fixes edge case where nodes could be placed in between an edge of another subgraph
|
|
||||||
- Fixes edge case where edge could become disconnected from endpoints when many subgraphs
|
|
||||||
- Fixes edge case where edges between grids become disconnected
|
|
||||||
19
ci/release/changelogs/v0.4.2.md
Normal file
19
ci/release/changelogs/v0.4.2.md
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
#### Features 🚀
|
||||||
|
|
||||||
|
- `tala-seeds` can be specified in the source code through `vars` (see manual for more)
|
||||||
|
|
||||||
|
#### Improvements 🧹
|
||||||
|
|
||||||
|
- Containers expand to fit large labels
|
||||||
|
- Edge labels are placed more intelligently to avoid overlaps
|
||||||
|
- Nodes with multiple edges to another node with long edge labels are positioned more intelligently
|
||||||
|
- Two nodes with > 2 edges with labels strongly prefer being in horizontal orientation to each other. This increases the chance of their multiple edge labels being readable.
|
||||||
|
- Hierarchies with multiple parents are more centered
|
||||||
|
- Up to 20% faster
|
||||||
|
|
||||||
|
#### Bugfixes ⛑️
|
||||||
|
|
||||||
|
- Fixed rare panic when hierarchies with containers were used
|
||||||
|
- Various edge cases that affect layout have been fixed
|
||||||
|
- Fixes rare panic with multiple edges with arrowhead labels on the same table column
|
||||||
|
- Fixes rare panic using step shapes connected to other shapes
|
||||||
Loading…
Reference in a new issue