Huashu takram soft tech
Skill nexu-io/open-design/plugins/_official/examples/huashu-takram-soft-tech
π¨ The open-source Claude Design alternative. π₯οΈ Local-first desktop app. πΌοΈ Your coding agent becomes the design engine: prototypes, landing pages, dashboards, slides, images & video β real files, HTML/PDF/PPTX/MP4 export. π€ Claude Code / Codex / Cursor / Gemini / OpenCode / Qwen & 20+ CLIs via BYOK.
npx -y skills add nexu-io/open-design --skill huashu-takram-soft-techAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Open Design procurement & security leave-behind: the one-pager-plus a buying committee can forward and approve internally. Built as a decision-grade B2B sales deck for buying committee, security, procurement.
SKILL.md
11.4 KB, as published. Nobody here has run it
Takram Soft Tech Β· δΈζΉζε η§ζ
Produce a single-file, soft nature-toned tech deck. You are a research
studio designer working in HTML: every chart is composed like a museum plate,
every color is borrowed from moss, paper and dusk. 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.
Adapted from the ppt-takram showcase of
huashu-design by θ±ε
(alchaincyf), MIT licensed. The upstream file is a single benchmark page;
this plugin extends it into a full multi-section deck while preserving its
DNA: data visualization treated as an art piece.
Hard spec (locked β violating any line is a regression)
Canvas & runtime
- One
<div id="stage">fixed at 1920 Γ 1080 px, centered withposition: fixed; top: 50%; left: 50%; afit()function appliestranslate(-50%, -50%) scale(min(innerWidth/1920, innerHeight/1080))on load andresize. All inner layout in px β the scaler owns responsiveness. - Each page is one
<section class="slide">inside#stagewith adata-screen-label="01 ε°ι’"-style label; exactly one slide carries.active. This is an all-light style β there are no dark pages; rhythm comes from density alternation, not theme swaps. - Navigation (keep the script verbatim):
β/β/PageUpprevious,β/β/Space/PageDownnext,Home/Endfirst/last;#/Nhash routing (1-indexed) read on load +hashchange, written viahistory.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 viafile://.
Design tokens (:root β keep the names, re-theme values only)
| Token | Value | Role |
|---|---|---|
--paper | #F5F0EB | warm rice-paper page background |
--ink | #2D3436 | heading ink |
--body | #3A3A3A | body ink |
--green | #6B8F71 | sage green β the primary accent |
--green-2 | #7D9B72 | lighter sage (delta pills, fills) |
--sage | #A8B5A0 | pale sage (labels, washes, flow lines) |
--gold | #D4A574 | the only warm accent β 2nd data series |
--gray-warm | #C8C2B8 | warm gray β 3rd data series, captions |
--gray-line | #D4CFC6 | delicate axis / rule lines |
--gray-dash | #DDD9D2 | dashed grid circles |
--gray-bg | #E8E4DC | faint outermost rings |
--muted | #615C54 | secondary text (warm ink, WCAG AA on paper) |
--faint | #736D64 | tertiary captions (warm ink, WCAG AA) |
--card | rgba(255,255,255,0.6) | translucent card background |
--card-line | rgba(168,181,160,0.18) | card hairline border |
--serif | 'Noto Serif SC', 'Songti SC', serif | display headings, quotes, insight text |
--sans | 'Inter', 'PingFang SC', 'Hiragino Sans GB', sans-serif | labels, numbers, body |
Fonts come from one Google Fonts @import (Inter 300β600 + Noto Serif SC
300β700) β the only external reference allowed. No purple, no blue, no
neon, no pure black, no gradients other than the two locked radial washes.
Signature devices (the visual DNA β every deck must show them)
- Data visualization as an art piece: charts are inline SVG composed
like museum plates β concentric dashed-circle grids (
--gray-dash,stroke-dasharray="2,6", decreasing stroke-width outward-in), delicate 0.5px axis lines, tiny hollow endpoint circles, faint scale numbers, and a 3-series overlay: green polygon prominent (stroke 2, dot r=6 with halo ring), gold secondary (stroke 1.2, dot r=3.5), warm-gray tertiary (stroke 1 dashed, dot r=2.5). Value callouts use thin annotation lines- 14px/600 green numerals. Every plate signs off with a right-aligned
8β9px
Fig. NN β Titlecaption in--gray-warm.
- 14px/600 green numerals. Every plate signs off with a right-aligned
8β9px
- Soft radial washes: every slide's
::beforecarries the two locked radial-gradients (sage at 20%/50%, warm gray at 80%/30%, β€8% alpha) β the page must breathe, never be flat white. - Rounded translucent cards (
.soft-card): 16px radius,rgba(255,255,255,0.6)fill,--card-linehairline border, and a 32px Γ 2px sage tick at top-left (::before). Value typography: 38β44px weight-300 numerals with a smaller green unit span; deltas in a rounded sage pill with a tiny SVG triangle (gold pill allowed once per page for a special callout). - Hairline masthead on every page: 64px strip, bottom border
rgba(107,143,113,0.15); left = green dot + 11px/500/3px-tracking uppercase deck name; right = 10px/400--faintsection label. Footer: 11px faint credit line bottom-left,Fig./Sec.note bottom-right. Page numbering lives only in the runtime counter pill. - Serif/sans mixing discipline: headings, quotes and insight prose in
--serifweight 400β500 (never 700+ display bombast); all labels, numerals, units and captions in--sans. English subtitles are 15β18px weight-300--mutedprose under Chinese serif titles. - Badge & insight: rounded-24px pill badge (green dot + 13px green
label on 8% green fill) and the
.insightcard (10px uppercase sage label + serif 17px/1.9 finding text) for key takeaways.
Layout enumeration (use 5+ per deck, never one layout everywhere)
| Layout | Role |
|---|---|
cover | left serif display title + badge, right oversized dashed-ring SVG art |
contents | serif rows + green index numbers separated by sage hairlines |
philosophy | one 60β70px serif claim + 3 soft-cards |
big-number | 240β280px weight-300 numeral + green unit + hairline stat row |
radar (the master) | 480px left panel (kicker/serif title/badge/insight/credit) + right radar plate + 3 metric cards β preserve this two-panel grid from upstream |
diagram | SVG flow/architecture plate: dashed clusters, sage dashed flow paths, gold middle node, green terminal node |
metrics-grid | 2Γ3 soft-card grid with delta pills |
quote | centered serif 52px quote, gold SVG quote marks, key phrase in green |
roadmap | hairline timeline, dots graded --gray-warm β --sage β --green-2 β --green (last with halo) |
closing | centered serif CTA over faint concentric rings + badge |
Typography & scale (read from 10 meters)
- Serif display: cover 90β104px, section titles 44β66px, weight 400β500, letter-spacing ~1px, line-height 1.35β1.65. Hero numerals 240β280px weight 300 with negative tracking.
- Labels: 10β13px, weight 500,
letter-spacing: 1.5β3px, uppercase β the connective tissue of the style. Body/captions 13β18px weight 300, line-height 1.7β1.9. - Chinese copy uses γγ quotes; bilingual pages put Chinese serif first, English weight-300 sans second.
Rhythm & discipline
- Default 10 pages (8β11 allowed). Alternate density: text page β chart plate β whitespace/quote page. At least one radar/diagram art plate per deck β it is the reason this style exists.
- Color budget: green is the protagonist; gold appears only as the 2nd data series, quote marks, or one special delta pill; warm gray is the 3rd series and all chrome. Never promote gold or gray to a heading color.
- No emoji, no icon fonts, no shadows heavier than the locked
drop-shadow(0 4px 20px rgba(0,0,0,0.04)), no border heavier than 1px except SVG data strokes, no Chart.js/mermaid β all charts are hand-laid inline SVG. - Real content only β the user's actual numbers; missing data gets an honest
<!-- εΎ η¨ζ·ζδΎ -->placeholder, never invented statistics. (The seed deck's γιε±Ώ/QINGYUγ data is fictional demo content and must be fully replaced.)
Workflow
- Clarify once: topic, audience, page count, and which comparison or dataset becomes the radar/diagram art plate β this style lives and dies by its chart plate; pick it before writing any page.
- Copy
example.html, retitle, then replace each section's content following the layout enumeration. Keep masthead/footer chrome, washes, token names, and the script intact. Re-theme by changing token values only β and only if the user's brand genuinely demands it; the sage/gold/warm-gray triad on rice paper is the identity. - For β₯ 5 pages, showcase first: build the cover + the radar master page, confirm the grammar, then batch the rest.
- Radar geometry: when axis values change, recompute polygon points as
(cx + rΒ·sin(ΞΈ), cy β rΒ·cos(ΞΈ))withr = 220 Β· value/100,ΞΈ β {0Β°, 120Β°, 240Β°}around (280, 280) β printed values and polygon shape must agree proportionally. - Self-check before delivery: arrow through every page; counter and
#/Nhash stay in sync; no overflow beyond 1920Γ1080; every chart plate has itsFig. NNcaption; only the three series colors appear in any chart; no leftover demo (γιε±Ώγ/"QINGYU") text; grep forTODO.