Skip to content

stacks: add youfang stack with magic-move-deck - #14

Merged
amszuidas merged 2 commits into
mainfrom
stacks/youfang-magic-move-deck
Nov 10, 2026
Merged

amszuidas merged 2 commits into
mainfrom
stacks/youfang-magic-move-deck

Conversation

@amszuidas

@amszuidas amszuidas commented Nov 10, 2026 •

Copy link
Copy Markdown
Collaborator

Replaces #13 (closed when its branch was renamed from atlas to youfang).

What this adds or changes

New team stack stacks/youfang with one skill.

Skill What it does
magic-move-deck Turns an architecture or flow walkthrough into a Keynote-style Magic Move slide deck: one offline 1920×1080 HTML file where every slide is a diagram seen through a camera, and the boxes and titles two slides share morph and fly instead of cross-fading. Storyline is fixed (cover → overview → per topic: zoom into its region, detail diagram, three spotlights → overview → closing card). Four style templates (hand-drawn, minimal, dark neon, neo-brutalist) expose the same helper API, so the agent renders one sample slide in each style, the user picks one, and only then draws the rest of the deck. Screenshot and transition checks, optional 4K / 1080p video.
A · Hand-drawn B · Minimal
C · Dark neon D · Neo-brutalist

The skill started from a hand-drawn-only version used for an internal architecture deck. For this copy:

  • the internal example deck, product screenshots, QR code, brand colours, hosting address and service names were removed; the example is now a neutral 19-slide RAG knowledge assistant deck (examples/rag-assistant/, sources + config + previews);
  • the hand-drawn template is adapted from TrentChou/handdrawn-diagram (MIT), credited in stacks/youfang/NOTICE.md; rough.js is loaded at render time, not bundled;
  • the deck engine reads the style from the diagrams (paper colour, fonts, glow, cover glass), and scripts/styles.py renders samples (samples) and switches a project's diagrams to a style in place (apply).

Also: marketplace entries in .claude-plugin/marketplace.json and .agents/plugins/marketplace.json, a row in stacks/README.md, lines in both top-level READMEs, a stack README, NOTICE.md, a draft WORKFLOW.md and an icon.

Check output

$ MINIMAX_CODE_DIR=../minimax-code CHECK_BASE=origin/main node scripts/check.mjs
validate-plugin: stacks/jiachen passed the public Plugin V1 checks.
validate-plugin: stacks/req-tpm passed the public Plugin V1 checks.
validate-plugin: stacks/ronny passed the public Plugin V1 checks.
validate-plugin: stacks/youfang passed the public Plugin V1 checks.
validate-plugin: templates/stack-template passed the public Plugin V1 checks.
check: 5 stack(s) passed: stacks/jiachen, stacks/req-tpm, stacks/ronny, stacks/youfang, templates/stack-template

Run from the stack copy: styles.py list shows the four styles, styles.py samples renders the four samples plus a contact sheet, and the example builds into a 19-slide deck. Every slide screenshots without page errors, and the bundled file passes snapshot_deck.py --offline (0 http references). Relative links in the changed Markdown: 0 broken.

Real usage record

Building the example deck in this PR with the skill (agent session, 2026-11-10):

  1. Plan. The agent wrote the storyline first: title, three topics (① ingestion, ② retrieval, ③ generation) each with a principle heading and three spotlight conclusions. It also wrote diagram-binding.md, which maps each concept to a colour role.
  2. Sample. It drew the ingestion detail diagram and ran styles.py samples on it, which produced the four previews above from one main().
  3. Build in one style. It drew the overview, the two other details and the cards in the hand-drawn style, then built the deck. Every drawn node was keyed: ov nodes=15 keyed=15, d1 6/6, d2 11/11, d3 7/7.
  4. Check by screenshot. It froze cover ↔ overview, every overview-region ↔ detail transition in both directions, and detail ↔ spotlight transitions at p = 0.06–0.75, and ran the title-overlap scan. Problems found and fixed in the diagrams, not the engine:
    • principle headings inside their zone made the flying Chinese title line cross the English one (188×20 px); moving the headings to a band above the zones cut this to about 45×14 px;
    • a detail's Chinese title that differed from the overview line cross-faded into a garbled overlay mid-flight; the titles now use the same text;
    • keyword / vector index boxes in opposite order on overview and detail crossed in flight and their text collided; the detail now uses the overview's order. The answer and LLM boxes on the generation slide had the same problem and got the same fix.
  5. Switch style. It applied minimal, neon and brutalist to the finished project with styles.py apply and rebuilt each time. Node and keyed counts were identical in all four styles, and the cover, overview ↔ detail and spotlight screenshots looked right. A short neon video render faded from the style's navy, not white.

The two placement rules from step 4 are now written into the skill's docs.

If this skill were deleted, where would the agent go wrong?

Asked for an animated walkthrough, the agent produces bullet slides or one static diagram per slide with cross-fades. The audience loses where a detail lives, and nothing checks whether shared concepts actually match across slides. The look also gets fixed before the user has seen any alternative, so changing it later means redrawing everything.

Checklist

  • No keys, tokens, internal hostnames or private links
  • Third-party content is credited with its license
  • I agree to release my own work here under the repository's MIT License (third-party material keeps its own license, noted in the stack's NOTICE.md)

Autofix with [code]smith
Open in [code]smith · Need help on this PR? Tag @codesmith-bot with what you need.

New team stack stacks/atlas with one skill, magic-move-deck: turns an
architecture or flow walkthrough into a Keynote-style Magic Move slide deck
(one offline 1920x1080 HTML; shared boxes and titles morph between slides).
Four style templates (hand-drawn, minimal, dark neon, neo-brutalist) share
one helper API, so the agent renders one sample slide per style, the user
picks one, and the rest of the deck is drawn in that style.

Includes a neutral 19-slide example (RAG knowledge assistant) with previews,
NOTICE.md crediting the MIT handdrawn-diagram template, marketplace entries
for Claude Code and Codex, and rows in the stack listings and READMEs.
Rename the directory, plugin name, author, homepage and every listing
(marketplaces, stacks/README.md, both top-level READMEs) from atlas to
youfang.
@amszuidas
amszuidas merged commit d520b2b into main Nov 10, 2026
2 checks passed
@amszuidas
amszuidas deleted the stacks/youfang-magic-move-deck branch November 10, 2026 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant