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.

examplescost-and-budgetheadcount-variance-diverging-bars.md

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

Variance Diverging Bars — Headcount Versus Plan (ECharts)

Best for: a signed variance list where direction (over plan / under plan) is the message Avoid when: every value shares one sign, or the reader needs absolute totals rather than deltas Answers: which teams are over plan, which are under, and how far each one missed

{
  "color": ["#2b66c4", "#2f9e44", "#f3a33c", "#d1242f", "#7048e8", "#0f9b9b", "#c16f8a", "#7c5a3d"],
  "width": 840,
  "height": 400,
  "title": { "text": "Headcount Variance vs Plan", "subtext": "Q3 close — below plan (left) / above plan (right)", "left": "left" },
  "legend": { "data": ["Below plan", "Above plan"], "top": 8, "right": 8 },
  "grid": { "left": 112, "right": 48, "top": 96, "bottom": 36 },
  "xAxis": { "type": "value", "name": "people vs plan", "nameLocation": "end", "nameGap": 14 },
  "yAxis": { "type": "category", "data": ["Data", "Platform", "Mobile", "Identity", "Search"], "axisTick": { "show": false } },
  "series": [
    {
      "name": "Below plan",
      "type": "bar",
      "stack": "variance",
      "barMaxWidth": 22,
      "label": { "show": true, "position": "left" },
      "data": [
        { "value": -6 },
        { "value": -2 },
        { "value": 0, "label": { "show": false } },
        { "value": 0, "label": { "show": false } },
        { "value": 0, "label": { "show": false } }
      ]
    },
    {
      "name": "Above plan",
      "type": "bar",
      "stack": "variance",
      "barMaxWidth": 22,
      "label": { "show": true, "position": "right" },
      "data": [
        { "value": 0, "label": { "show": false } },
        { "value": 0, "label": { "show": false } },
        { "value": 1 },
        { "value": 4 },
        { "value": 7 }
      ]
    }
  ]
}

Data Shape

One signed number per category. Split the values into two series — negatives in one, positives in the other — so each direction gets its own theme colour without writing a colour function (ECharts option must stay pure JSON).

Key Options

Option Effect
"stack": "variance" Both series share one slot, so bars grow left and right from zero instead of being placed side by side
Per-item label.show: false Hides the "0" label that the opposite-series placeholder would otherwise print
label.position: "left" / "right" Labels sit outside the bar end, so the sign is never hidden behind the bar
Two series instead of one Gives the two directions distinct series colours and a readable legend, with no colour callback
xAxis.type: "value" The zero baseline must be a value axis — a category axis cannot express sign

Pitfalls

  • ❌ One series with mixed signs and a formatter callback → ✅ ECharts options here are pure JSON; split by sign across two series
  • ❌ Zero values written as null → ✅ null is skipped but 0 keeps the stack heights stable; hide only the label
  • ❌ Axis truncated around the data range → ✅ a diverging chart must keep zero inside the axis, otherwise the sign loses meaning
  • ❌ Positive and negative entries of the same category drawn side by side → ✅ one stack name is what makes the reading "from zero outward"

Alternatives

Variant Use instead
Cumulative deltas that add up to a new total run-rate-waterfall.md
Signed values across two periods comparison-bars.md (grouped)
Distribution of the same measure boxplot-latency-distribution.md
<!-- source: ECharts option manual (series-bar stack / label) + bar how-to; diverging-reading rule from the data-visualization guidance on zero baselines -->

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