#564 by GitHub stars
enesozturk/dimensional-drawing
Create Apple style dimensional drawings of UI components.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/dimensional-drawing/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
5c457437c8c8 → 5c457437c8c8
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 5c457437c8c8
No earlier version was observed for comparison.
skills/dimensional-drawing-motion/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
5c457437c8c8 → 5c457437c8c8
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 5c457437c8c8
No earlier version was observed for comparison.
Heat
8.0- Star growth, last 7 daysAhead of 99% of tracked repositories
- Star growth, last 24 hoursAhead of 99% of tracked repositories
- Rank movement, last 7 daysAhead of 96% of tracked repositories
- Commits, last 30 daysAhead of 54% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- dimensional-drawing
skills/dimensional-drawing - dimensional-drawing-motion
skills/dimensional-drawing-motion
How it works
dimensional-drawing
When your agent uses it
Make an Apple-style monochrome dimensional drawing of a UI component or physical product — title-block summary plus one dense drawing sheet with variable-based dimensions. Use when asked for an anatomy, spec sheet, redline or dimensional drawing of a component.
What it loads into context
Frontmatter
56 tokensAlways available to the agent
SKILL.md
2,336 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- House rules
- Code system
- Page structure
- Sheet layout (one sheet)
- Component-specific views (pick what applies)
- Measuring a UI component
- Drawing kit (SVG, inline JS)
- Before publishing
Files
SKILL.mdcore8,684 bytesSKILL.mdcore8,684 bytesexamples/card-sheet.htmlasset23,067 bytesexamples/dialog-sheet.htmlasset25,651 bytes
Read SKILL.md
# Dimensional drawing
Draw one subject the way Apple's accessory dimensional drawings do (developer.apple.com/accessories/dimensional-drawings): everything on one sheet, notes top-left, views spread across the sheet with smaller detail views, tables beside the views that use them. Output is one self-contained HTML file (on claude.ai, publish it as an Artifact). Worked examples: `examples/dialog-sheet.html` and `examples/card-sheet.html` next to this file — copy their drawing kit instead of starting from zero.
## House rules
1. **Monochrome.** Black line on white paper, grays only. No accent color anywhere. Tell things apart by line weight, dash pattern, hatch and light gray fill. Single light theme by design (`color-scheme: light`, every color explicit).
2. **Architecture, not content.** For UI, draw slots, never real copy: lead box with an X, `TITLE SLOT · FLEX`, `TRAIL` / `ACTION` (hug), `CONTENT SLOT · FILL`, `META SLOT · FLEX · WRAPS`, `LABEL SLOT`, `VALUE SLOT`. No text-width dimensions. Size words: HUG (sized by content), FLEX (takes remaining space), FILL (parent width).
3. **Variables, not numbers.** Every dimension on the drawing is a code; tables give code, variable name, value. Derived values are formulas with the result: `H1 header-min = 2·S1+H3 = 64`, `R2 r-inner = R1−B−S6 = 11`, `E1 = BL+SP−Y`, `E2 = BL+SP`, `E3 = BL+SP+Y`.
4. **Unbranded.** No product or company names, logos or wordmarks in the drawing, title block or footer unless the user asks. Use neutral names (`UI-CARD-001`, "UI component reference").
5. **Never invent values.** Anything not in the source is `[TBD]` (e.g. viewport margin, overflow behavior, unpublished physical dims) and is drawn as a proportional schematic.
## Code system
View the complete source on GitHubdimensional-drawing-motion
When your agent uses it
Turn a finished dimensional drawing sheet into a ~10 s Apple-style motion film — lines draw themselves in, the camera pulls back, layers lift into an exploded view, the full sheet resolves. Use after the dimensional-drawing skill, or when asked to animate a spec sheet or anatomy drawing.
What it loads into context
Frontmatter
67 tokensAlways available to the agent
SKILL.md
1,663 tokensWhen the skill is activated
Reference documents
1,119 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Where it runs
- Choreography (reference timing, seconds)
- How the template works
- Adapting to a new component
- Style rules for motion
Scripts executed separately
adapters/headless/package.jsonadapters/headless/render.mjstemplates/scene-dialog.js
Files
SKILL.mdcore5,941 bytesSKILL.mdcore5,941 bytesadapters/claude-motion.mddoc2,248 bytesadapters/headless/README.mddoc1,601 bytesadapters/headless/package.jsonruns499 bytesadapters/headless/player.htmlasset2,027 bytesadapters/headless/render.mjsruns4,033 bytestemplates/base.cssasset1,982 bytestemplates/scene-dialog.jsruns23,949 bytes
Read SKILL.md
# Dimensional drawing → motion
Animate a sheet made with the `dimensional-drawing` skill. The film reads like a pen drawing the sheet while a camera moves over it. Same rules as the drawing: monochrome, slots not content, variable codes, unbranded.
Start from `templates/scene-dialog.js` + `templates/base.css`. It is the reference film (11 s, 1920×1080, 60 fps). Adapt it; do not start blank.
## Where it runs
| You are | Use |
|---|---|
| Claude on claude.ai with the **Motion** artifact type | `adapters/claude-motion.md`. This is the primary, tuned target. |
| Any other agent / no Claude | `adapters/headless/`: Playwright draws each frame, ffmpeg encodes. `npm install`, then `node render.mjs --scene … --css … --out film.mp4`. |
The scene is the same file in both. It only needs a tiny `kit` (`seg, lerp, eo, ei, eio, clamp01, stage, h, css, scene`) and must be a **pure function of time**: `render(t)` sets every property from `t` alone, never from the previous frame. That is what lets a headless renderer jump to any frame.View the complete source on GitHubSkills included
- dimensional-drawing
- dimensional-drawing-motion
Repository facts
- License
- MIT
- Created
- Oct 23, 2026
- Last pushed
- Oct 24, 2026
- Forks
- 130
- Open issues
- 0
- Project activity
- Active
Rank over the last 12 weeks
Now #564 · best #563
- #582 on Nov 2
- #581 on Nov 3
- #580 on Nov 4
- #574 on Nov 5
- #563 on Nov 6
- #564 since Nov 7
5 earlier periods
- #667 on Oct 28
- #615 on Oct 29
- #600 on Oct 30
- #594 on Oct 31
- #583 on Nov 1
Before you install
Local scriptsAutomated signals, not a guarantee
Checked Nov 3, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 2 notes
skills/dimensional-drawing/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/dimensional-drawing-motion/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 19 network referencesin 4 files: dimensional-drawing/examples/card-sheet.html:6 dimensional-drawing/examples/dialog-sheet.html:6 dimensional-drawing-motion/adapters/headless/player.html:6 and 1 more
- No hidden or obfuscated text
- No instruction overrides
- 1 reference to secretsin 1 file: dimensional-drawing-motion/templates/base.css:19
- No requests to vote in Hot
Show all 23 signals by file
skills/dimensional-drawing-motion/adapters/headless/package.json
- Executable scriptline 1
Executable file
skills/dimensional-drawing-motion/adapters/headless/player.html
- Network accessline 6
render.mjs injects: STAGE_W, STAGE_H, BG, the scene CSS and the scene JS. The scene API matches Claude Motion's kit: kit.scene(id, { init(kit), render(t) }). --> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Ari - Network accessline 7
The scene API matches Claude Motion's kit: kit.scene(id, { init(kit), render(t) }). --> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Arimo:wght@400;700&display=swap"> <style> - Network accessline 8
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Arimo:wght@400;700&display=swap">
skills/dimensional-drawing-motion/adapters/headless/render.mjs
- Executable scriptline 1
#!/usr/bin/env node
skills/dimensional-drawing-motion/templates/base.css
- Access to secretsline 19
[Credential-related source omitted]
skills/dimensional-drawing-motion/templates/scene-dialog.js
skills/dimensional-drawing/examples/card-sheet.html
- Network accessline 6
<title>Card · Dimensional Drawing</title> <meta name="claude:viewport-fit-sides" content="cover"> <link rel="preconnect" href="https://fonts.googleapis.com"> - Network accessline 7
<meta name="claude:viewport-fit-sides" content="cover"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Arimo:wght@400;600;700&display=swap"> - Network accessline 8
<link rel="preconnect" href="https://fonts.googleapis.com"> - Network accessline 9
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Arimo:wght@400;600;700&display=swap"> - Network accessline 124
<script> (function(){ const NS='http://www.w3.org/2000/svg';let sv,A,HAT,uid=0; - Network accessline 125
(function(){ const NS='http://www.w3.org/2000/svg';let sv,A,HAT,uid=0; function mk(t,a,p){const e=document.createElementNS(NS,t);for(const k in a)if(a[k]!=null)e.setAttribute(k,a[k]);(p||sv).appendChild(e);return e} - Network accessline 126
const NS='http://www.w3.org/2000/svg';let sv,A,HAT,uid=0;
skills/dimensional-drawing/examples/dialog-sheet.html
- Network accessline 6
<title>Dialog · Dimensional Drawing</title> <meta name="claude:viewport-fit-sides" content="cover"> <link rel="preconnect" href="https://fonts.googleapis.com"> - Network accessline 7
<meta name="claude:viewport-fit-sides" content="cover"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Arimo:wght@400;600;700&display=swap"> - Network accessline 8
<link rel="preconnect" href="https://fonts.googleapis.com"> - Network accessline 9
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Arimo:wght@400;600;700&display=swap"> - Network accessline 122
<script> (function(){ const NS='http://www.w3.org/2000/svg';let sv,A,HAT,uid=0; - Network accessline 123
(function(){ const NS='http://www.w3.org/2000/svg';let sv,A,HAT,uid=0; function mk(t,a,p){const e=document.createElementNS(NS,t);for(const k in a)if(a[k]!=null)e.setAttribute(k,a[k]);(p||sv).appendChild(e);return e} - Network accessline 124
const NS='http://www.w3.org/2000/svg';let sv,A,HAT,uid=0;
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 1 fact
- Contacts www.w3.org, which SKILL.md, the README and the plugin manifest do not mentiondimensional-drawing-motion/templates/scene-dialog.js:2High confidence
Signal confidence: 5 facts
- Executable script in code of a file that runsdimensional-drawing-motion/adapters/headless/package.json:1High confidence
- Executable script in code of a file that runsdimensional-drawing-motion/adapters/headless/render.mjs:1High confidence
- Network access in code of a file that runsdimensional-drawing-motion/templates/scene-dialog.js:1High confidence
- Executable script in code of a file that runsdimensional-drawing-motion/templates/scene-dialog.js:1High confidence
- Network access in code of a file that runsdimensional-drawing-motion/templates/scene-dialog.js:2High confidence
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md skills/dimensional-drawing/SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/dimensional-drawing/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/dimensional-drawing/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/dimensional-drawing/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/dimensional-drawing/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/dimensional-drawing/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/enesozturk-dimensional-drawing/)