sketchi 0.22.0 → 0.24.0
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.
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
<p align="center">
|
|
8
8
|
<strong>Typed, deterministic diagrams from your terminal.</strong><br />
|
|
9
|
-
Create, inspect, revise, and export local flowcharts, mindmaps, sequence diagrams, timelines, charts, state machines, Gantt charts, ER diagrams, and
|
|
9
|
+
Create, inspect, revise, and export local flowcharts, mindmaps, sequence diagrams, timelines, charts, state machines, Gantt charts, ER diagrams, class diagrams, and org charts—or turn one prompt into validated, editable Excalidraw.
|
|
10
10
|
</p>
|
|
11
11
|
|
|
12
12
|
<p align="center">
|
|
@@ -53,7 +53,7 @@ sketchi generate --prompt "Map release approval with pass and revise branches"
|
|
|
53
53
|
|
|
54
54
|
With no `--prompt`, Sketchi opens a short wizard only when both standard input
|
|
55
55
|
and standard output are human terminals, output is text, and CI is absent. It
|
|
56
|
-
asks for prompt text, flowchart (the default), mind map, sequence diagram, timeline, chart, state machine, Gantt chart, ER diagram,
|
|
56
|
+
asks for prompt text, flowchart (the default), mind map, sequence diagram, timeline, chart, state machine, Gantt chart, ER diagram, class diagram, or org chart, and where to save the
|
|
57
57
|
PNG. The choices are the current directory, a `diagrams/` folder under exactly
|
|
58
58
|
the directory where Sketchi was run, or a custom path with the same semantics as
|
|
59
59
|
`--dest`. Sketchi does not inspect Git, and it creates `diagrams/` only after
|
|
@@ -64,7 +64,7 @@ that wizard question. Explicit `--format png` may proceed; another format or
|
|
|
64
64
|
Scripts, pipes, redirected streams, CI, and `--output json` never prompt or
|
|
65
65
|
block. They must pass `--prompt`; omitting it retains the deterministic usage
|
|
66
66
|
error. Passing `--prompt` is always direct and noninteractive.
|
|
67
|
-
`--type` accepts only flowchart, mindmap, sequence, timeline, chart, state-machine, gantt, er, or
|
|
67
|
+
`--type` accepts only flowchart, mindmap, sequence, timeline, chart, state-machine, gantt, er, class, or org-chart and is authoritative.
|
|
68
68
|
Without it, the generation model selects one of those from the request; a
|
|
69
69
|
request for any other kind of diagram returns a typed unsupported-type error
|
|
70
70
|
instead of being coerced into a supported one.
|
|
@@ -103,7 +103,7 @@ The endpoint defaults to
|
|
|
103
103
|
`https://playground.sketchi.app/api/v1/canvases/create`; use `--endpoint URL` or
|
|
104
104
|
`SKETCHI_CANVAS_ENDPOINT` only for preview and local testing. The existing
|
|
105
105
|
`create` command remains the separate, strictly offline command for accepted
|
|
106
|
-
flowchart, mindmap, sequence, timeline, chart, state-machine, gantt, er, and
|
|
106
|
+
flowchart, mindmap, sequence, timeline, chart, state-machine, gantt, er, class, and org-chart documents.
|
|
107
107
|
|
|
108
108
|
## Create and work with a diagram offline
|
|
109
109
|
|
|
@@ -323,10 +323,12 @@ Native timelines: use `buildTimeline` (Code Mode) or `generate --type timeline`
|
|
|
323
323
|
|
|
324
324
|
Native charts: use `buildChart` (Code Mode) or `generate --type chart` (CLI). Supply `kind` (`bar`, `line`, or `pie`), `categories`, and `series: [{ name, values }]` with one value per category; optional `unit`, `categoryAxisTitle`, `valueAxisTitle`, `stacked` and `orientation` (bars), and `donut` (pies). The renderer draws nice-tick axes from zero for bars, value and percentage labels, a legend for several series, and leader lines for thin pie slices. Never supply coordinates.
|
|
325
325
|
|
|
326
|
-
Native state machines: use `buildStateMachine` (Code Mode) or `generate --type state-machine` (CLI). Supply `initial`, states with unique ids and labels (`kind: "final"` for an end, `"choice"` for a guarded branch; states naming a `parent` form a composite with its own `initial`), and transitions with `source`, `target` and optional `event`, `guard` and `action`, drawn as `event [guard] / action`. Self-loops and transitions into or out of a composite are supported; composites do not nest.
|
|
326
|
+
Native state machines: use `buildStateMachine` (Code Mode) or `generate --type state-machine` (CLI). Supply `initial`, states with unique ids and optional labels (regular-state labels default to ids verbatim; `kind: "final"` for an end, `"choice"` for a guarded branch; states naming a `parent` form a composite with its own `initial`), and transitions with `source`, `target` and optional `event`, `guard` and `action`, drawn as `event [guard] / action`. Self-loops and transitions into or out of a composite are supported; composites do not nest.
|
|
327
327
|
|
|
328
328
|
Native Gantt charts: use `buildGantt` (Code Mode) or `generate --type gantt` (CLI). Supply tasks with unique ids, labels, a `start` day (`YYYY-MM-DD`) and either `end` (last day, inclusive) or `duration` (calendar days); `milestone: true` draws a diamond. Optional `dependsOn` (finish-to-start predecessor ids), `phase` on every task (`phases` sets their order), `progress` (percent) and `today`. The renderer draws a to-scale date axis with day, week, month, quarter or year ticks, one row per task under phase headers, a date column, and dependency arrows routed clear of every bar and label. Never supply coordinates.
|
|
329
329
|
|
|
330
330
|
Native ER diagrams: use `buildErDiagram` (Code Mode) or `generate --type er` (CLI). Supply entities with unique ids (no dots) and fields written `"name type markers"` (`"id uuid PK"`, `"customer_id uuid FK"`, `"email text UK"`, `"note text?"` for nullable), and relationships whose `from` and `to` name `entity.field` or an entity, each end with a cardinality (`one`, `zero-or-one`, `many`, `one-or-many` or `zero-or-many`) and an optional label. The renderer draws each entity as a table and each relationship as an orthogonal line between the rows it joins, with crow's-foot ends; it owns every coordinate.
|
|
331
331
|
|
|
332
332
|
Native class diagrams: use `buildClassDiagram` (Code Mode) or `generate --type class` (CLI). Supply classes with unique ids (no colons or spaces), an optional `kind` (`abstract`, `interface` or `enum`) and members written as UML does (`"- radius: double"`, `"+ area(): double {abstract}"`), and relationships with a `kind`: `inheritance` or `realization` (`from` extends or implements `to`), `composition` or `aggregation` (`from` is the whole), `association` (`navigable: true` adds an arrow) or `dependency` (`from` uses `to`). Associations, compositions and aggregations take multiplicities and roles at each end. The renderer draws three-compartment boxes with superclasses above their subclasses and each relationship's UML head; it owns every coordinate.
|
|
333
|
+
|
|
334
|
+
Native org charts: use `buildOrgChart` (Code Mode) or `generate --type org-chart` (CLI). Supply people with unique ids (no colons), a `name`, an optional `title` and `department`, and `manager`: the id of the person they report to (only the top person has none; `forest: true` allows several). `assistant: true` places an assistant beside their manager, `avatar: true` draws an initials placeholder, `dottedLines: [{ report, manager, label? }]` adds dotted-line or matrix reports (a stated scope or reason, such as "for clinical systems", goes in `label`), and `groupByDepartment: true` draws each department below the top as a labeled region. The renderer draws a card per person top-down, a bus line from each manager to their reports, long lists of reports stacked in one or two columns, and dotted lines dashed with a head at the second manager and their label beside them; it owns every coordinate.
|