Skip to content
Skillpedia
Documentation101k · #568

huashu-sparkline-arc

Lets your agent explain the factors driving a company's revenue and forecast future results. It's useful for presenting financial data and strategies to the board.

What it does

This tool creates visual presentations called 'narrative decks'. They use a specific style with a wavy line showing the evolution of an idea from its current state to a desired future, highlighting turning points with orange.

When to use it

  • ✓To clearly present complex financial data.
  • ✓To tell a company's growth story to investors.
  • ✓To explain a business plan or strategy to the board.

Example of what to ask your AI

“Create a presentation about our company's revenue growth over the past year, showing key drivers and future forecast.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/nexu-io/open-design/blob/main/plugins/_official/examples/huashu-sparkline-arc/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/nexu-io/open-design/blob/main/plugins/_official/examples/huashu-sparkline-arc/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

The AI uses a predefined presentation template with a waveform that moves between 'what is' and 'what could be'. It replaces existing content to tell your story, using orange only at crucial change points.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add nexu-io/open-design --skill huashu-sparkline-arc

Or download just the file:

curl -L https://raw.githubusercontent.com/nexu-io/open-design/main/plugins/_official/examples/huashu-sparkline-arc/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Narrative Sparkline · 叙事波形

Produce a single-file, Duarte-style narrative deck. You are a story cartographer working in HTML: every page is built on one oscillating waveform that travels between "what is" and "what could be", and orange appears only where the story turns. The visual system, canvas contract, and navigation runtime are locked by example.html. Start from example.html, replace content only — do not rewrite the design or the script. Do not introduce any color or font outside this spec.

Generated from the Sparkline叙事波形 / Narrative Sparkline (Duarte式) spec (中性派, 还原91%) in references/design-styles.md of huashu-design by 花叔 (alchaincyf), MIT licensed. Lineage: Nancy Duarte《Resonate》sparkline structure, Al Gore An Inconvenient Truth, Duarte Inc. data storytelling.

Hard spec (locked — violating any line is a regression)

Canvas & runtime

  • One <div id="stage"> fixed at 1920 × 1080 px, centered with position: fixed; top: 50%; left: 50%; a fit() function applies translate(-50%, -50%) scale(min(innerWidth/1920, innerHeight/1080)) on load and resize. All inner layout in px — the scaler owns responsiveness.
  • Each page is one <section class="slide"> inside #stage with a data-screen-label="01 封面"-style label; exactly one slide carries .active; dark pages add .dark.
  • Navigation (keep the script verbatim): ←/↑/PageUp previous, →/↓/Space/PageDown next, Home/End first/last; #/N hash routing (1-indexed) read on load + hashchange, written via history.replaceState; click left third = back, rest = forward; fixed counter pill bottom-right, key-hint bottom-left. No external JS, no build step — the file must open inside a sandboxed iframe via file://.

Design tokens (:root — keep the names, re-theme values only)

Token Value Role
--paper #FFFFFF light page background
--night #0E0E0C dark pages (solo-line, closing)
--ink #1A1814 primary text on light
--night-ink #F5F3EE primary text on dark
--accent #FF6B2C the brand orange — the only accent
--accent-dim rgba(255,107,44,.14) annotation halos / soft fills
--ghost #C9C7C2 greyed comparison waveform
--grid #ECEAE6 hairline rules
--muted #9A958C secondary labels
--muted-2 #5F5A52 body copy on light
--night-line #26241F hairlines on dark pages
--night-mut #8A857C secondary text on dark
--sans 'Inter', 'PingFang SC', …, sans-serif headlines + body
--mono 'Geist Mono', 'SFMono-Regular', 'Menlo', monospace labels, annotations, numerals

Fonts: one Google Fonts @import (Inter 400–900 + Geist Mono 400–600) and nothing else. No CDN scripts, no chart libraries, no images — every chart is a hand-written inline SVG path. A second accent color is the cardinal sin of this style; grey is the only other voice.

Signature devices (the visual DNA — every deck must show them)

  1. The waveform spine: every page carries at least one full-bleed .spark SVG with a smooth cubic-bézier oscillating path. Line layer uses preserveAspectRatio="none" so the path stretches; annotation dots/text live in a second, non-stretched SVG layer with the same viewBox so circles stay round and type stays true. Line weights: .arc 5px orange hero line, .arc-thin 3.5px, .ghost-line 3px grey, .ghost-dash stroke-dasharray: 2 10 grey baseline/industry reference.
  2. Orange turning-point annotations: .pt group = soft halo circle (--accent-dim), solid orange dot (r≈6–7), optional 2px orange ring for THE inflection point, plus Geist Mono uppercase .lab (12px, 2px tracking) and .val (20px, 600) value text. Grey .pt-ghost dots mark pain points on comparison lines. Orange marks turning points only — if every dot is orange, nothing turns.
  3. Progressive reveal: paths carry pathLength="1" + class draw (stroke-dasharray: 1; stroke-dashoffset: 1); .slide.active .draw animates stroke-dashoffset to 0 (spark-draw, ~1.8s, ease-out-ish cubic-bezier). Segment stagger via d1/d2/d3, dot fade-ins via p1…p5 (animation-delay ladder). Because .active toggles display, the reveal replays every time a slide is entered — keep it that way.

…

FAQ

What is a 'narrative deck'?

It's a visual presentation focused on telling a clear and engaging story, using visual elements like wavy lines to show progression and turning points.

Why is the color orange important?

The color orange is used exclusively to highlight the most important moments in the story, the 'turning points', where something significant changes or is decided.

Can I change the design or add other colors?

No, the design is fixed and follows strict rules to maintain clarity and style. Only orange is allowed as an accent, along with shades of gray and white/black.

Details

Original description by the author

OpenDesign's revenue-driver narrative: what actually moves ARR, the leverage points, and the forecast. Built as a decision-grade data & finance deck for board, finance leadership.

repo: nexu-io/open-design

Popularity

GitHub stars
101k
Ranking position
#568
License
Apache-2.0
Updated
10/16/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills