@@ -1,5 +1,10 @@
|
||||
# Changelog
|
||||
|
||||
## 0.2.0 - 2026-09-02
|
||||
|
||||
- Add safe deterministic entity-relationship, mind-map and timeline grammars,
|
||||
richer diagnostics and accessible outline/export coverage.
|
||||
|
||||
## 0.1.0 - 2026-09-01
|
||||
|
||||
- Add bounded flowchart, sequence, class and state parser/layout.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
==============================================================================
|
||||
@add-ideas/toolbox-contract@0.2.3
|
||||
@add-ideas/toolbox-contract@0.3.0
|
||||
Declared licence: Apache-2.0
|
||||
==============================================================================
|
||||
--- LICENSE ---
|
||||
@@ -198,7 +198,7 @@ Declared licence: Apache-2.0
|
||||
|
||||
|
||||
==============================================================================
|
||||
@add-ideas/toolbox-helpers@0.1.0
|
||||
@add-ideas/toolbox-helpers@0.2.0
|
||||
Declared licence: GPL-3.0-or-later
|
||||
==============================================================================
|
||||
--- LICENSE ---
|
||||
@@ -879,7 +879,7 @@ Public License instead of this License. But first, please read
|
||||
|
||||
|
||||
==============================================================================
|
||||
@add-ideas/toolbox-shell-react@0.2.3
|
||||
@add-ideas/toolbox-shell-react@0.3.0
|
||||
Declared licence: Apache-2.0
|
||||
==============================================================================
|
||||
--- LICENSE ---
|
||||
|
||||
+13
-1
@@ -1,7 +1,19 @@
|
||||
# Diagram Tools
|
||||
|
||||
Diagram Tools is a local, script-free editor for bounded flowchart, sequence,
|
||||
class, state, entity-relationship, mind-map and timeline sources. It provides
|
||||
line diagnostics, reusable examples, accessible outlines, pan/zoom, local
|
||||
source import/export, normalized JSON, inert SVG and local PNG export. Mermaid
|
||||
directives, styling, click handlers and external resources are never executed.
|
||||
|
||||
Diagram Tools is a GPL-3.0-or-later local text/visual editor with an independent safe Mermaid-like subset for flowchart/graph, sequence, class and state diagrams. It produces deterministic SVG, a local 2× PNG, syntax diagnostics, scroll/drag pan, 25–300% zoom and an accessible textual outline.
|
||||
|
||||
Supported syntax is deliberately small: node declarations/shapes and four edge styles; participants/messages; class declarations/members/relations; state nodes/transitions. Directives, clicks, styles, scripts, HTML and remote assets are rejected. Caps: 50,000 characters, 2,000 lines, 200 nodes, 500 edges, 2,400 px layout edge and 20 megapixel PNG.
|
||||
Supported syntax is deliberately small: node declarations/shapes and four edge
|
||||
styles; participants/messages/notes; class declarations, bounded member blocks
|
||||
and relations; labelled state nodes, start/end boundaries and transitions; ER
|
||||
attributes/relations; hierarchical mind maps; and timeline sections/events.
|
||||
Directives, clicks, styles, scripts, HTML and remote assets are rejected. Caps:
|
||||
50,000 characters, 2,000 lines, 200 nodes, 500 edges and a 20 megapixel PNG;
|
||||
large vector canvases remain scrollable instead of clipping model content.
|
||||
|
||||
Run `npm ci`, `npm run check`, `npm run test:browser`, then `npm run package:release -- --force`.
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
# Source identity
|
||||
|
||||
Diagram Tools 0.1.0 · `de.add-ideas.diagram-tools` · https://git.add-ideas.de/lotobo/diagram-tools · GPL-3.0-or-later. Deterministic releases normalize file order, time and permissions and add SHA-256.
|
||||
Diagram Tools 0.2.0 · `de.add-ideas.diagram-tools` · https://git.add-ideas.de/lotobo/diagram-tools · GPL-3.0-or-later. Deterministic releases normalize file order, time and permissions and add SHA-256.
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
# Architecture
|
||||
|
||||
`core/diagram.ts` parses one fixed grammar into nodes, edges and line diagnostics, then lays it out deterministically as escaped SVG. Sequence diagrams use lifelines; other modes use a bounded grid. React shows the last successful SVG after errors and delegates PNG rasterization to a local canvas.
|
||||
`core/diagram.ts` parses fixed, bounded flowchart, sequence, class, state, ER,
|
||||
mind-map and timeline grammars into nodes, edges and line diagnostics, then lays
|
||||
them out deterministically as escaped SVG. ER attribute blocks and sequence
|
||||
notes, class member blocks and labelled state transitions/boundaries become
|
||||
inert model data; directives, click handlers, remote resources and styling
|
||||
commands are rejected rather than interpreted. Layout dimensions are derived
|
||||
from the bounded model rather than clipping nodes to a fixed viewport.
|
||||
|
||||
React retains the last successful SVG after errors, imports/exports source and
|
||||
the normalized JSON model, and delegates optional PNG rasterization to a local
|
||||
canvas. Generated SVG contains only application-owned geometry and escaped
|
||||
text.
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
const CACHE = "diagram-tools-v0.1.0",
|
||||
const CACHE = "diagram-tools-v0.2.0",
|
||||
APP = [
|
||||
"./",
|
||||
"./index.html",
|
||||
|
||||
+15
-2
@@ -3,7 +3,7 @@
|
||||
"schemaVersion": 1,
|
||||
"id": "de.add-ideas.diagram-tools",
|
||||
"name": "Diagram Tools",
|
||||
"version": "0.1.0",
|
||||
"version": "0.2.0",
|
||||
"description": "Create safe diagrams locally.",
|
||||
"entry": "./",
|
||||
"icon": "./favicon.svg",
|
||||
@@ -21,9 +21,22 @@
|
||||
"crossOriginIsolated": false,
|
||||
"topLevelContext": false
|
||||
},
|
||||
"io": {
|
||||
"accepts": [
|
||||
{ "mediaType": "text/plain", "extensions": [".txt", ".mmd", ".mermaid"] },
|
||||
{ "mediaType": "application/json", "extensions": [".json"] }
|
||||
],
|
||||
"produces": [
|
||||
{ "mediaType": "image/svg+xml", "extensions": [".svg"] },
|
||||
{ "mediaType": "image/png", "extensions": [".png"] },
|
||||
{ "mediaType": "application/json", "extensions": [".json"] },
|
||||
{ "mediaType": "text/plain", "extensions": [".txt", ".mmd"] }
|
||||
]
|
||||
},
|
||||
"capabilities": { "required": [], "optional": [] },
|
||||
"privacy": {
|
||||
"processing": "local",
|
||||
"fileUploads": false,
|
||||
"fileUploads": true,
|
||||
"telemetry": false,
|
||||
"label": "Diagram source and exports remain local."
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user