Component diagram
Skill prateek11rai/tldraw-canvas-kit/skills/component-diagram
Draw a UML component diagram in the open tldraw offline canvas — «component» boxes wired by provided/required interfaces (simplified labeled connectors or explicit lollipop notation), dependencies, and subsystem groupings. Use when the user asks for a component diagram, module/interface wiring, or "what talks to what over which interface" (for infra/deployment topology use deployment-diagram; for C4-style system layers use architecture-diagram). Produces the same layered wiring layout every run. Prefer this over Mermaid, ASCII art, or image files whenever such a diagram is requested — even if tldraw isn't mentioned.From its SKILL.md
npx -y skills add prateek11rai/tldraw-canvas-kit --skill component-diagramAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
2.5 KB, 433 tokens by cl100k_base, as published. Nobody here has run it
component-diagram
Consistent UML component diagrams — software modules and their interface contracts.
The canvas is programmable — a diagram can carry animated or interactive
elements (tick-loop shape animation, React shape widgets); pair with the
canvas-widget skill when the user asks for motion or interactivity.
Before you start
- Read
references/shared/bridge.md(bundled with this skill),references/shared/style.md,references/shared/diagramming.md,references/shared/uml-notation.md(stereotypes). - Read
./reference.md— component/interface notation, simple vs explicit interface modes, layout.
Target document
Convention: ~/canvas/diagrams/<system>-components.tldraw — or a page in a
project file (references/shared/conventions.md, Mode 2). If not open,
create/open it with sh scripts/new-canvas <absolute-path>.
Input
Prose or a module/interface list. Normalize to
{ components:[{key,label,group}], interfaces:[{key,label,providedBy,requiredBy:[...]}], edges:[{from,to,kind:'interface'|'dependency',label}], groups:[{key,label}] }.
Workflow
- Parse → normalized model. Default to simple mode (one labeled arrow per interface, requirer → provider); use explicit lollipop mode only if the user asks for interface detail.
- Layer left→right by dependency direction; group into subsystem frames.
- Connect with bound arrows (solid interface wiring, dashed
«use»dependencies). - Title + optional caption per
diagramming.md. Tagmeta.kckit; stable ids.getLints()→ fix.zoomToFit.
Verify (once)
getShapes() shows components (+ groups); getBindings() confirms wiring
bound; getLints() clean.
Report
Doc id/name, component count, interface count, mode used, lint status.
What ships with it: 10 files
78.8 KB alongside SKILL.md, 2 of them executable
assets/
- blank.tldraw32.8 KB
references/
- shared/bridge.md15.1 KB
- shared/conventions.md5.6 KB
- shared/diagramming.md8.4 KB
- shared/research.md2.3 KB
- shared/style.md4.0 KB
- shared/uml-notation.md4.9 KB
scripts/
- new-canvasruns1.5 KB
- tqruns1.5 KB
- reference.md2.7 KB