Map
A wardley mapping tool: Write some text, get a diagram
Building
Open the project in Xcode and press buithe run button
Formatting and Linting
In order to format and lint the code, the project provides a Makefile that uses swift-format.
- To format:
make format - To lint:
make lint
These commands run on every .swift file in the directory.
Language Reference
Nodes
Nodes should be of the format Name (x,y). The name can contain spaces, and
the x/y can be integers or decimals. All dimensions go from 0 - 100, so
50 means 50% of the way through. eg.
Node (1,2)My Cool Node (1.0,2.0)A (1, 2.0)
Edges
Edges connect two nodes. They use the format Node -- Node (line only) or
Node -> Node (with arrowhead). eg.
Node -- My Cool NodeA -> Node
Blockers
You can place a blocker in front of a node by using [Blocker] Node. eg.
[Blocker] My Cool Node[Blocker] A
Evolution
You can draw evolution arrows by using [Evolution] Node +x or
[Evolution] Node -x. eg.
[Evolution] My Cool Node -10[Evolution] A +15
Modifying the axes
If you need more space for one of the four segments you can use
[I] x, [II] x, or [III] x. eg.
[I] 15[II] 35.5[III] 80
The parser doesn't enforce position, so if you put axis iii before axis i, you'll get some rendering issues.
Groups
You can group nodes together by using [Group] NodeA NodeB.... eg.
[Group] Tinker Tailor Soldier
Notes
You can add notes [Note] (x, y) Text where x and y are numbers, and Text is
any text with spaces or \n.
[Note] (30, 45) Here we want to call out an explanation or context.[Note] (90, 25) We're close to the edge \n so we can multiline it.