termaid 0.2.0__tar.gz → 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- termaid-0.3.0/.gitignore +20 -0
- {termaid-0.2.0 → termaid-0.3.0}/CHANGELOG.md +5 -0
- {termaid-0.2.0 → termaid-0.3.0}/PKG-INFO +41 -4
- {termaid-0.2.0 → termaid-0.3.0}/README.md +40 -3
- termaid-0.3.0/docs/gallery.md +2150 -0
- {termaid-0.2.0 → termaid-0.3.0}/pyproject.toml +1 -1
- termaid-0.3.0/scripts/generate_gallery.py +94 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/__init__.py +17 -1
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/__main__.py +3 -1
- termaid-0.3.0/src/termaid/cli.py +328 -0
- termaid-0.3.0/src/termaid/layout/coordinates.py +51 -0
- termaid-0.3.0/src/termaid/layout/grid.py +194 -0
- termaid-0.3.0/src/termaid/layout/layers.py +443 -0
- termaid-0.3.0/src/termaid/layout/placement.py +295 -0
- termaid-0.3.0/src/termaid/layout/subgraphs.py +186 -0
- termaid-0.3.0/src/termaid/model/mindmap.py +23 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/output/text.py +2 -1
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/flowchart.py +33 -2
- termaid-0.3.0/src/termaid/parser/mindmap.py +81 -0
- termaid-0.3.0/src/termaid/renderer/canvas.py +301 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/draw.py +45 -18
- termaid-0.3.0/src/termaid/renderer/mindmap.py +294 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/routing/router.py +101 -2
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_cli.py +51 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_corner_cases.py +163 -1
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_edge_styles.py +10 -8
- termaid-0.3.0/tests/test_mindmap.py +102 -0
- termaid-0.3.0/tests/test_rendering_quality.py +236 -0
- termaid-0.2.0/.gitignore +0 -10
- termaid-0.2.0/demo/demo.tape +0 -68
- termaid-0.2.0/demo/erdiagram.mmd +0 -19
- termaid-0.2.0/demo/flowchart.mmd +0 -6
- termaid-0.2.0/demo/gitgraph.mmd +0 -10
- termaid-0.2.0/demo/sequence.mmd +0 -13
- termaid-0.2.0/src/termaid/cli.py +0 -158
- termaid-0.2.0/src/termaid/layout/grid.py +0 -879
- termaid-0.2.0/src/termaid/renderer/canvas.py +0 -254
- termaid-0.2.0/tests/fixtures/expected/all_shapes.txt +0 -45
- termaid-0.2.0/tests/fixtures/expected/ampersand_both.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/backlink_complex.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/bidir_dotted.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/bidir_labeled.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/bidir_td.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/bidir_thick.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/bidirectional.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/blockdiagram/basic.txt +0 -7
- termaid-0.2.0/tests/fixtures/expected/blockdiagram/col_span.txt +0 -14
- termaid-0.2.0/tests/fixtures/expected/blockdiagram/grid.txt +0 -14
- termaid-0.2.0/tests/fixtures/expected/blockdiagram/links.txt +0 -7
- termaid-0.2.0/tests/fixtures/expected/branching.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/chain.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/classdiagram/annotation.txt +0 -21
- termaid-0.2.0/tests/fixtures/expected/classdiagram/basic.txt +0 -10
- termaid-0.2.0/tests/fixtures/expected/classdiagram/inheritance.txt +0 -20
- termaid-0.2.0/tests/fixtures/expected/classdiagram/relationships.txt +0 -19
- termaid-0.2.0/tests/fixtures/expected/comments.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/cycle.txt +0 -7
- termaid-0.2.0/tests/fixtures/expected/diamond.txt +0 -23
- termaid-0.2.0/tests/fixtures/expected/dotted_arrow.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/duplicate_labels.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/empty_graph.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/erdiagram/attributes.txt +0 -20
- termaid-0.2.0/tests/fixtures/expected/erdiagram/basic.txt +0 -19
- termaid-0.2.0/tests/fixtures/expected/erdiagram/dashed.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/erdiagram/multiple_entities.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/fan_in.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/fan_out.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/flowchart_keyword.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/gitgraph/cherry_pick.txt +0 -7
- termaid-0.2.0/tests/fixtures/expected/gitgraph/feature_branch.txt +0 -7
- termaid-0.2.0/tests/fixtures/expected/gitgraph/linear.txt +0 -4
- termaid-0.2.0/tests/fixtures/expected/gitgraph/tags.txt +0 -4
- termaid-0.2.0/tests/fixtures/expected/gitgraph/tb_direction.txt +0 -18
- termaid-0.2.0/tests/fixtures/expected/graph_bt.txt +0 -25
- termaid-0.2.0/tests/fixtures/expected/graph_rl.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/labeled_edges.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/large_graph.txt +0 -53
- termaid-0.2.0/tests/fixtures/expected/long_labels.txt +0 -7
- termaid-0.2.0/tests/fixtures/expected/mermaid_comprehensive.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/mixed_arrow_styles.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/multiple_links.txt +0 -21
- termaid-0.2.0/tests/fixtures/expected/no_arrow_dotted.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/no_arrow_solid.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/no_arrow_thick.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/node_with_label.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/parallelogram.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/self_ref_with_edge.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/self_reference.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/semicolons.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/sequence/arrows.txt +0 -16
- termaid-0.2.0/tests/fixtures/expected/sequence/autonumber.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/sequence/basic.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/sequence/multiline_notes.txt +0 -19
- termaid-0.2.0/tests/fixtures/expected/sequence/nested_blocks.txt +0 -22
- termaid-0.2.0/tests/fixtures/expected/sequence/notes.txt +0 -16
- termaid-0.2.0/tests/fixtures/expected/sequence/participant_kinds.txt +0 -14
- termaid-0.2.0/tests/fixtures/expected/sequence/self_message.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/simple_lr.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/simple_tb.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/simple_td.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/single_node.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/statediagram/basic.txt +0 -21
- termaid-0.2.0/tests/fixtures/expected/statediagram/choice.txt +0 -31
- termaid-0.2.0/tests/fixtures/expected/statediagram/composite.txt +0 -28
- termaid-0.2.0/tests/fixtures/expected/statediagram/start_end.txt +0 -29
- termaid-0.2.0/tests/fixtures/expected/subgraph_basic.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/subgraph_nested.txt +0 -27
- termaid-0.2.0/tests/fixtures/expected/subgraph_three_levels.txt +0 -24
- termaid-0.2.0/tests/fixtures/expected/subgraph_two_separate.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/subgraph_with_labels.txt +0 -12
- termaid-0.2.0/tests/fixtures/expected/thick_arrow.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/three_nodes_inline.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/trapezoid.txt +0 -5
- termaid-0.2.0/tests/fixtures/expected/two_roots.txt +0 -13
- termaid-0.2.0/tests/fixtures/expected/unicode_labels.txt +0 -5
- {termaid-0.2.0 → termaid-0.3.0}/.github/workflows/ci.yml +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/.github/workflows/publish.yml +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/CONTRIBUTING.md +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/LICENSE +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/demo/termaid-demo.gif +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/graph/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/graph/model.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/graph/shapes.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/layout/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/blockdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/classdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/erdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/gitgraph.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/piechart.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/sequence.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/model/treemap.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/output/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/output/rich.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/output/widget.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/blockdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/classdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/erdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/gitgraph.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/piechart.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/sequence.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/statediagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/tokens.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/parser/treemap.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/py.typed +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/blockdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/charset.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/classdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/erdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/gitgraph.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/piechart.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/sequence.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/shapes/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/themes.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/renderer/treemap.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/routing/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/src/termaid/routing/pathfinder.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/__init__.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/conftest.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/blockdiagram/basic.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/blockdiagram/col_span.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/blockdiagram/grid.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/blockdiagram/links.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/classdiagram/annotation.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/classdiagram/basic.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/classdiagram/inheritance.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/classdiagram/relationships.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/erdiagram/attributes.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/erdiagram/basic.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/erdiagram/dashed.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/erdiagram/multiple_entities.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/all_shapes.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/ampersand_both.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/backlink_complex.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/bidir_dotted.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/bidir_labeled.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/bidir_td.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/bidir_thick.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/bidirectional.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/branching.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/chain.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/comments.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/cycle.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/diamond.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/dotted_arrow.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/duplicate_labels.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/empty_graph.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/fan_in.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/fan_out.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/flowchart_keyword.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/graph_bt.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/graph_rl.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/labeled_edges.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/large_graph.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/long_labels.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/mermaid_comprehensive.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/mixed_arrow_styles.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/multiple_links.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/no_arrow_dotted.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/no_arrow_solid.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/no_arrow_thick.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/node_with_label.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/parallelogram.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/self_ref_with_edge.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/self_reference.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/semicolons.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/simple_lr.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/simple_tb.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/simple_td.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/single_node.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/subgraph_basic.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/subgraph_nested.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/subgraph_three_levels.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/subgraph_two_separate.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/subgraph_with_labels.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/thick_arrow.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/three_nodes_inline.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/trapezoid.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/two_roots.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/flowcharts/unicode_labels.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/gitgraph/cherry_pick.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/gitgraph/feature_branch.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/gitgraph/linear.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/gitgraph/tags.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/gitgraph/tb_direction.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/arrows.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/autonumber.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/basic.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/multiline_notes.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/nested_blocks.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/notes.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/participant_kinds.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/sequence/self_message.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/statediagram/basic.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/statediagram/choice.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/statediagram/composite.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/fixtures/statediagram/start_end.mmd +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_blockdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_classdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_erdiagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_gitgraph.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_integration.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_layout.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_parser_comprehensive.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_piechart.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_renderer.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_routing.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_sequence.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_shapes.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_snapshots.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_state_diagram.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_themes.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_treemap.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/tests/test_warnings.py +0 -0
- {termaid-0.2.0 → termaid-0.3.0}/uv.lock +0 -0
termaid-0.3.0/.gitignore
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
.DS_Store
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.pyc
|
|
4
|
+
*.egg-info/
|
|
5
|
+
dist/
|
|
6
|
+
build/
|
|
7
|
+
.venv/
|
|
8
|
+
.pytest_cache/
|
|
9
|
+
# Scratch diagram files in root
|
|
10
|
+
/*.mmd
|
|
11
|
+
|
|
12
|
+
# Demo source files (tape scripts, scratch mmd) — keep only the gif
|
|
13
|
+
demo/*.tape
|
|
14
|
+
demo/*.mmd
|
|
15
|
+
demo/.DS_Store
|
|
16
|
+
|
|
17
|
+
# Other scratch files
|
|
18
|
+
.coverage
|
|
19
|
+
*.txt
|
|
20
|
+
screenshot.png
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.2.1 (2026-03-25)
|
|
4
|
+
|
|
5
|
+
- Add `--gap` CLI flag and `gap` parameter for compact diagram spacing
|
|
6
|
+
- Document wide LR diagram workarounds in README
|
|
7
|
+
|
|
3
8
|
## 0.2.0 (2026-03-20)
|
|
4
9
|
|
|
5
10
|
- Add pie chart support (`pie` syntax, rendered as horizontal bar charts)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: termaid
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: Render Mermaid diagrams in your terminal or Python app
|
|
5
5
|
License-Expression: MIT
|
|
6
6
|
License-File: LICENSE
|
|
@@ -34,10 +34,13 @@ Description-Content-Type: text/markdown
|
|
|
34
34
|
<img src="demo/termaid-demo.gif" alt="termaid demo" width="800">
|
|
35
35
|
</p>
|
|
36
36
|
|
|
37
|
+
**[Try it online at termaid.com](https://termaid.com)**
|
|
38
|
+
|
|
37
39
|
## Features
|
|
38
40
|
|
|
39
|
-
- **
|
|
41
|
+
- **10 diagram types:** flowcharts, sequence, class, ER, state, block, git graphs, pie charts, treemaps, and mindmaps
|
|
40
42
|
- **Zero dependencies:** pure Python, nothing to install beyond the package itself
|
|
43
|
+
- **Terminal-aware:** auto-fits diagrams to terminal width with progressive compaction
|
|
41
44
|
- **Rich and Textual integration:** colored output and TUI widgets with optional extras
|
|
42
45
|
- **6 color themes:** default, terra, neon, mono, amber, phosphor
|
|
43
46
|
- **ASCII fallback:** works on any terminal, even the most basic ones
|
|
@@ -400,6 +403,30 @@ treemap-beta
|
|
|
400
403
|
|
|
401
404
|
**Features:** nested sections via indentation, `"label": value` syntax, proportional sizing, `%%` comments
|
|
402
405
|
|
|
406
|
+
### Mindmaps
|
|
407
|
+
|
|
408
|
+
```mermaid
|
|
409
|
+
mindmap
|
|
410
|
+
Project
|
|
411
|
+
Design
|
|
412
|
+
Wireframes
|
|
413
|
+
Mockups
|
|
414
|
+
Development
|
|
415
|
+
Frontend
|
|
416
|
+
Backend
|
|
417
|
+
Testing
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
```
|
|
421
|
+
╭─ Design ──╭─ Wireframes
|
|
422
|
+
│ ╰─ Mockups
|
|
423
|
+
Project ──├─ Development ──╭─ Frontend
|
|
424
|
+
│ ╰─ Backend
|
|
425
|
+
╰─ Testing
|
|
426
|
+
```
|
|
427
|
+
|
|
428
|
+
**Features:** indentation-based nesting, automatic overflow to the left when many children, rounded/sharp/ASCII branch characters, Mermaid shape markers stripped (`(round)`, `[square]`, `{{hexagon}}`, `)cloud(`)
|
|
429
|
+
|
|
403
430
|
## CLI options
|
|
404
431
|
|
|
405
432
|
| Flag | Description |
|
|
@@ -409,7 +436,12 @@ treemap-beta
|
|
|
409
436
|
| `--theme NAME` | Color theme: `default`, `terra`, `neon`, `mono`, `amber`, `phosphor` (requires `pip install termaid[rich]`) |
|
|
410
437
|
| `--padding-x N` | Horizontal padding inside boxes (default: 4) |
|
|
411
438
|
| `--padding-y N` | Vertical padding inside boxes (default: 2) |
|
|
439
|
+
| `--gap N` | Space between nodes (default: 4). Use `1` or `2` for compact diagrams |
|
|
440
|
+
| `--width N` | Max output width. Re-renders with smaller gap/padding if exceeded |
|
|
441
|
+
| `--no-auto-fit` | Disable automatic compaction when diagram exceeds terminal width |
|
|
412
442
|
| `--sharp-edges` | Sharp corners on edge turns instead of rounded |
|
|
443
|
+
| `-o FILE` | Write output to file instead of stdout |
|
|
444
|
+
| `--show-ids` | Show node IDs alongside labels for debugging (e.g. `myId: My Label`) |
|
|
413
445
|
|
|
414
446
|
## Python API
|
|
415
447
|
|
|
@@ -455,8 +487,13 @@ pip install termaid[textual] # Textual TUI widget
|
|
|
455
487
|
|
|
456
488
|
## Limitations
|
|
457
489
|
|
|
458
|
-
- **Layout engine is approximate.** Node positioning uses a grid-based barycenter heuristic.
|
|
459
|
-
- **Manhattan-only edge routing.** Edges use A* pathfinding on a grid.
|
|
490
|
+
- **Layout engine is approximate.** Node positioning uses a grid-based barycenter heuristic. Very dense graphs may still produce some edge crossings.
|
|
491
|
+
- **Manhattan-only edge routing.** Edges use A* pathfinding on a grid. The engine auto-expands gaps for crossing edges and biases toward flow-aligned routes.
|
|
492
|
+
- **Wide diagrams.** The CLI auto-compacts when the diagram exceeds terminal width. For very wide LR chains, use `--width N`, `--gap 1`, or pipe through `less -S`.
|
|
493
|
+
|
|
494
|
+
## Gallery
|
|
495
|
+
|
|
496
|
+
See [docs/gallery.md](docs/gallery.md) for rendered examples of all 78 supported diagram fixtures.
|
|
460
497
|
|
|
461
498
|
## Acknowledgements
|
|
462
499
|
|
|
@@ -6,10 +6,13 @@
|
|
|
6
6
|
<img src="demo/termaid-demo.gif" alt="termaid demo" width="800">
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
|
+
**[Try it online at termaid.com](https://termaid.com)**
|
|
10
|
+
|
|
9
11
|
## Features
|
|
10
12
|
|
|
11
|
-
- **
|
|
13
|
+
- **10 diagram types:** flowcharts, sequence, class, ER, state, block, git graphs, pie charts, treemaps, and mindmaps
|
|
12
14
|
- **Zero dependencies:** pure Python, nothing to install beyond the package itself
|
|
15
|
+
- **Terminal-aware:** auto-fits diagrams to terminal width with progressive compaction
|
|
13
16
|
- **Rich and Textual integration:** colored output and TUI widgets with optional extras
|
|
14
17
|
- **6 color themes:** default, terra, neon, mono, amber, phosphor
|
|
15
18
|
- **ASCII fallback:** works on any terminal, even the most basic ones
|
|
@@ -372,6 +375,30 @@ treemap-beta
|
|
|
372
375
|
|
|
373
376
|
**Features:** nested sections via indentation, `"label": value` syntax, proportional sizing, `%%` comments
|
|
374
377
|
|
|
378
|
+
### Mindmaps
|
|
379
|
+
|
|
380
|
+
```mermaid
|
|
381
|
+
mindmap
|
|
382
|
+
Project
|
|
383
|
+
Design
|
|
384
|
+
Wireframes
|
|
385
|
+
Mockups
|
|
386
|
+
Development
|
|
387
|
+
Frontend
|
|
388
|
+
Backend
|
|
389
|
+
Testing
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
```
|
|
393
|
+
╭─ Design ──╭─ Wireframes
|
|
394
|
+
│ ╰─ Mockups
|
|
395
|
+
Project ──├─ Development ──╭─ Frontend
|
|
396
|
+
│ ╰─ Backend
|
|
397
|
+
╰─ Testing
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
**Features:** indentation-based nesting, automatic overflow to the left when many children, rounded/sharp/ASCII branch characters, Mermaid shape markers stripped (`(round)`, `[square]`, `{{hexagon}}`, `)cloud(`)
|
|
401
|
+
|
|
375
402
|
## CLI options
|
|
376
403
|
|
|
377
404
|
| Flag | Description |
|
|
@@ -381,7 +408,12 @@ treemap-beta
|
|
|
381
408
|
| `--theme NAME` | Color theme: `default`, `terra`, `neon`, `mono`, `amber`, `phosphor` (requires `pip install termaid[rich]`) |
|
|
382
409
|
| `--padding-x N` | Horizontal padding inside boxes (default: 4) |
|
|
383
410
|
| `--padding-y N` | Vertical padding inside boxes (default: 2) |
|
|
411
|
+
| `--gap N` | Space between nodes (default: 4). Use `1` or `2` for compact diagrams |
|
|
412
|
+
| `--width N` | Max output width. Re-renders with smaller gap/padding if exceeded |
|
|
413
|
+
| `--no-auto-fit` | Disable automatic compaction when diagram exceeds terminal width |
|
|
384
414
|
| `--sharp-edges` | Sharp corners on edge turns instead of rounded |
|
|
415
|
+
| `-o FILE` | Write output to file instead of stdout |
|
|
416
|
+
| `--show-ids` | Show node IDs alongside labels for debugging (e.g. `myId: My Label`) |
|
|
385
417
|
|
|
386
418
|
## Python API
|
|
387
419
|
|
|
@@ -427,8 +459,13 @@ pip install termaid[textual] # Textual TUI widget
|
|
|
427
459
|
|
|
428
460
|
## Limitations
|
|
429
461
|
|
|
430
|
-
- **Layout engine is approximate.** Node positioning uses a grid-based barycenter heuristic.
|
|
431
|
-
- **Manhattan-only edge routing.** Edges use A* pathfinding on a grid.
|
|
462
|
+
- **Layout engine is approximate.** Node positioning uses a grid-based barycenter heuristic. Very dense graphs may still produce some edge crossings.
|
|
463
|
+
- **Manhattan-only edge routing.** Edges use A* pathfinding on a grid. The engine auto-expands gaps for crossing edges and biases toward flow-aligned routes.
|
|
464
|
+
- **Wide diagrams.** The CLI auto-compacts when the diagram exceeds terminal width. For very wide LR chains, use `--width N`, `--gap 1`, or pipe through `less -S`.
|
|
465
|
+
|
|
466
|
+
## Gallery
|
|
467
|
+
|
|
468
|
+
See [docs/gallery.md](docs/gallery.md) for rendered examples of all 78 supported diagram fixtures.
|
|
432
469
|
|
|
433
470
|
## Acknowledgements
|
|
434
471
|
|