Index of every page on this site: llms.txt
All skills
markdown-viewer avatar

/documd-visuals

@2672b69
by Markdown Viewermarkdown-viewer/skills3.4k stars
192
Run it yourself

Create text-driven visuals in Markdown: charts, diagrams, cards, architecture and page layouts. Charts and analytical views (bar, line, pie, heatmap, correlation, regression); reliability and operations (latency, incident, throughput, cycle time, OKR, standup, on-call); product and finance (funnel, retention, revenue, budget); process and workflow (approval, BPMN); software design and behaviour (class, state machine, sequence, C4); dependencies and impact (dependency graph, ER, causality); system architecture as HTML (layer stack, wings, zones, topology, service catalogue, request paths); infrastructure (cloud, Kubernetes, ETL, network, security, IAM, compliance); governance and people (ArchiMate, org chart, hiring); knowledge and planning (mind map, roadmap, Gantt, migration); documents (comparison, SWOT, memo, policy, catalogue, case study). Use when a document needs a diagram, chart or card. Figures render live. Not for slide decks or math notation. Not recommended: mermaid / canvas / drawio / dot.

Use this Skill: https://skilld.dev/gh/markdown-viewer/skills/documd-visuals

Nothing lands on disk. Nothing to clean up.

Fork this Skill

Edit a local copy. It keeps the author and licence.

enginesvega.md

≈1.4k tokens on demand. Your agent reads this file only when SKILL.md points to it.

vega

Vega-Lite's declarative grammar plus the Vega runtime for everything it cannot express. Runtime: vega 6.4.0 + vega-lite 6.4.3. Fences: ```vega-lite (alias vegalite) for the declarative grammar, ```vega for the low-level runtime. Expressions are evaluated by vega-interpreter — no JavaScript in specs.

Scope

Vega-Lite — declarative single and multi-view charts:

Area Units
Marks bar line area point circle square tick rect rule text arc trail
Composite marks boxplot errorbar errorband
Transforms aggregate · bin · calculate · density · filter · flatten · fold · impute · joinaggregate · loess · lookup · pivot · quantile · regression · sample · stack · timeUnit · window
Composition layer · facet · concat/hconcat/vconcat · repeat · resolve
Data inline values, sequence/sphere generators

Vega — everything Vega-Lite cannot express: layouts and statistics implemented as transforms with marks:

force (+ linkpath) · tree (+ treelinks, radial via orient) · treemap · pack · partition (+ arc = sunburst) · kde (violin / density) · kde2d + isocontour + geopath (contour plots) · wordcloud · voronoi · quantile · stratify · heatmap · pie (+ arc) · trail marks.

Fit

  • Choose Vega/Vega-Lite when the data needs work before it can be drawn: joins, windows, regression, LOESS, density, imputation, top-k, percent-of-total, small multiples, faceting.
  • Choose Vega-Lite for exploration-style charts and statistical views; choose echarts for report-grade single charts with heavy styling and a legend-heavy layout.
  • Vega-Lite is the fastest route to "one more panel": layer/facet/repeat compose without new engines.

Styling

Colour comes from the chosen theme — pick one in ../styles/palette.md, then copy that theme's two mechanisms (for example ../styles/themes/default.md) — two dialects, two mechanisms:

  • vega-lite: "config": { "range": { "category": [ … ] } }. It replaces the default tableau10 scheme for every categorical channel; a channel's own scale.range still wins.
  • vega: an explicit "type": "ordinal" colour scale whose range is the ramp, with the marks reading it ("fill": { "scale": "color", "field": … }). Without it every mark gets the same default blue.

Leave config.axis.* / config.text.* colours and config.background alone — the renderer owns text and the figure must stay transparent. "scheme" values are for continuous scales; a continuous scale derived from the palette interpolates within one family (tint-* → shade-*).

Constraints

  • No external data: data.url is unreliable on the offline/export path — always inline data.values, or use the sequence generator. Geographic displays are out of scope (they need GeoJSON/TopoJSON).
  • Interactions are out of scope: params/select/bind and the interactive gallery are for live pages; an exported image cannot show them. Static overview+detail is fine (two views, one axis).
  • Vega resolves datasets in declaration order: a dataset that uses "source": "<name>" must come after the dataset it reads, or you get Undefined data set name.
  • force must be "static": true, otherwise the render captures mid-simulation and the picture changes between runs.
  • Vega-Lite auto-sorting is disabled by the renderer: every ordinal axis whose order matters needs an explicit "sort" (or a deliberate data row order). Sorting is not inferred from the data type.
  • kde2d receives pixel coordinates ({"expr": "scale('x', datum.field)"}), so its bandwidth is in pixels, not data units.
  • Data field names produced by transforms must be used verbatim: density → value + density; bin → bin_maxbins_*; regression → x + y; fold → key + value.
  • mark.color/fill values are pixel-level styling: when a document defines both light and dark themes, prefer theme-neutral schemes (redblue, blues) or a small set of literal accents.

Anti-patterns

❌ Don't ✅ Do
data: {"url": …} Inline values (or sequence)
params / select for a static export Layer or facet to show both states
A force layout without static: true "static": true, iterations ≥ 200
Implicit ordinal order Explicit "sort" on the encoding channel
A 200-row inline values array Aggregate upstream, or use sequence + calculate
Smoothing a stacked area hard (smooth: true) Small smooth values, or none — interpolated area invents volume
Pie charts with many slices arc for ≤ 6 parts, bars otherwise
Reading a Vega tree/treemap/pack output as data Those transforms generate geometry; the fields (x,y,r,x0…) are layout output

Sources

Source: SKILL.md on GitHub

skilld matched fixed text patterns in SKILL.md and file names. Patterns miss obfuscated code.

skilld run checks every file with the same patterns. It asks for approval before it loads a Skill with a behavior marked Needs approval.

No alerts16d3 checks · Risk SAFE
  • Gen Agent Trust Hub16d

    This skill provides documentation and examples for creating various visuals in Markdown using engines like ECharts, Vega, PlantUML, and HTML. It recommends using the vendor-owned @markdown-viewer/documd CLI tool for document conversion and verification. The skill itself contains no executable code or malicious patterns.

  • Socket16d

    No alerts

  • Snyk16d

    Risk: LOW · No issues

Signed by skilld at 2672b69. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 weeks ago.

Activeupdated 3 weeks ago
Other metadata
compatibility
Figures are text in the Markdown — fenced blocks or bare HTML — and the host viewer renders them live: nothing to pre-render, build or install. Export to html / epub / docx / pdf is optional and needs Node 18+ and Chrome/Chromium, via `npx @markdown-viewer/documd`.

README badge

README badge for markdown-viewer/skills