Mmcp.market

open-design-landing-deck skill

by nexu-io·nexu-io/open-design·98k stars·Apache-2.0

OpenDesign's brand-story deck for partners and press: why it exists, what it believes, and where design is going. Built as a decision-grade marketing & GTM deck for partners, press, community.

A100/100content scan

Is the open-design-landing-deck skill safe?

Clean: nothing in its files matched our rules. We read 6 files in the folder on 2026-09-28.

No findings.

Install the open-design-landing-deck skill

A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.

git clone --depth 1 https://github.com/nexu-io/open-design.git /tmp/open-design
mkdir -p ~/.claude/skills
cp -r /tmp/open-design/design-templates/open-design-landing-deck ~/.claude/skills/open-design-landing-deck
available in every project

In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub

The instructions your agent would load

SKILL.md as published, without the frontmatter. Read it on GitHub

open-design-landing-deck

Sister skill to open-design-landing. Same Atelier Zero visual system (warm paper, Inter Tight + Playfair Display, italic-serif emphasis, coral dots), but paginated as a horizontal magazine-style swipe deck instead of a long scrolling page.

The navigation model is intentionally borrowed from the guizang-ppt skill — ←/→ arrow keys, wheel / swipe, ESC for the overview grid — so it feels like a print magazine flipping page by page rather than a web slide deck scrolling.

inputs.json + ../open-design-landing/styles.css
        │
        └──────────► scripts/compose.ts
                            │
                            ▼
                   <out>/index.html
                   (one viewport per slide, horizontal swipe)

What you get

out horizontally on one transformed flex track.

  • A single self-contained HTML file with N viewport-sized slides laid

Home/End.

  • Keyboard navigation: ←/→ · ↑/↓ · PageUp/PageDown · Space ·

flick doesn't overshoot).

  • Wheel + touch swipe (with momentum guard so a single trackpad

Roman-numeral year, live slide counter (01 / 11).

  • Per-slide chrome strip: brand mark, deck title, location,

jump. Mirrors guizang-ppt's overview UX.

  • Coral progress bar at the bottom that fills as you advance.
  • Dot indicator strip near the bottom; click any dot to jump.
  • ESC overview grid — scaled thumbnails of every slide, click to

duplicate assets.

  • Reuses the same 16-slot image library as the sister skill — no

Slide types

A typical 11-slide pitch:

1. cover     — title plate, hero collage
2. section   — "I. The problem"
3. content   — about / manifesto, bullets
4. content   — capabilities, bullets
5. stats     — 4 numbers
6. section   — "II. How it feels"
7. content   — method, bullets
8. content   — selected work
9. quote     — customer testimonial
10. cta      — primary + secondary action
11. end      — mega kicker + signature

Workflow

1. Author inputs.json

Start from inputs.example.json (the Open Design pitch deck). The brand block, image strategy, and assets path mirror the sister skill — if you already filled out an open-design-landing brief, copy brand and imagery over verbatim.

For each slide, pick a kind and fill the typed fields from schema.ts. MixedText (sans-serif baseline + italic-serif emphasis spans + coral terminating dot) is the same encoding used by the sister skill — see its inputs.example.json.

2. (Optional) generate or stub imagery

This skill does not ship its own image generator or placeholder script — it shares the 16-slot library from open-design-landing. To regenerate or stub:

# generate via gpt-image-2 (fal.ai)
FAL_KEY=... npx tsx ../open-design-landing/scripts/imagegen.ts ../open-design-landing/inputs.example.json --out=../open-design-landing/assets/

# or paper-textured SVG placeholders
npx tsx ../open-design-landing/scripts/placeholder.ts ../open-design-landing/assets/

Set your deck's inputs.imagery.assets_path to wherever those PNGs live (default in the example: ../open-design-landing/assets/).

3. Compose the deck

npx tsx scripts/compose.ts inputs.json out/index.html

The composer reads inputs.json, loads the canonical Atelier Zero stylesheet from ../open-design-landing/styles.css, layers deck-specific rules on top (horizontal flex track, slide layouts, HUD, dot nav, ESC overview, keyboard / wheel / touch handlers), and writes one self-contained HTML file.

4. Self-check

with chrome strip top-right showing 01 / N.

  • [ ] Open the HTML in a fresh browser tab; slide 1 (cover) shows

viewport to the right; dot nav advances; the coral progress bar ticks forward.

  • [ ] Press → (or Space, or scroll-down). Smoothly slides one

click any tile to jump and dismiss the overview.

  • [ ] Press End. Jumps to the final slide.
  • [ ] Press Home. Returns to slide 1.
  • [ ] Press Esc. Overview grid appears with scaled thumbnails;

a single column; dot nav still works; chrome strips shrink.

  • [ ] Resize to 1080px and 640px. Cover / content slides collapse to

transitions stay snappy and don't induce motion sickness.

  • [ ] prefers-reduced-motion: reduce (DevTools → Rendering): page
  • [ ] Lighthouse: contrast AA, font-display swap, no layout shift.

Boundaries

../open-design-landing/styles.css at compile time. Do not maintain a duplicate copy here; if Atelier Zero tokens evolve, edit them once in the sister skill.

  • Reuse the sister skill's stylesheet. The composer reads

re-render — the same 16 plates work for both surfaces.

  • Reuse the sister skill's image library. No need to re-prompt or

100vh × 100vw at 1280×800 it will overflow and feel cramped. Trim copy or split into two slides.

  • Keep slides single-viewport. If a slide's content does not fit

posture is what makes this skill feel like a magazine spread; a vertical scroller would just be a long landing page.

  • Do not switch to vertical scroll-snap. The horizontal swipe

decks are out of scope; for a multi-deck experience, render each deck separately and link from a parent index.

  • Do not add a router. This is a single-file artifact. Multi-page

See also

pattern this skill borrows.

  • open-design-landing — landing page sister skill.
  • guizang-ppt — the magazine-deck navigation
  • design-systems/atelier-zero/DESIGN.md — token spec.

More skills from nexu-io/open-design

  • Aarticle-magazineHuashu / huashu-md-html-inspired magazine article layout for turning Markdown or notes into a polished long-form HTML essay.
  • Aaudio-jingleAudio generation skill — jingles, beds, voiceover, and sound effects. Routes music requests to Suno V5 / Udio / Lyria, speech to MiniMax TTS / FishAudio / ElevenLabs V3, and SFX to ElevenLabs SFX or AudioCraft. Output is one MP3/WAV file saved to the project folder.
  • Aaudio-jingleAudio generation skill — jingles, beds, voiceover, and sound effects. Routes music requests to Suno V5 / Udio / Lyria, speech to MiniMax TTS / FishAudio / ElevenLabs V3, and SFX to ElevenLabs SFX or AudioCraft. Output is one MP3/WAV file saved to the project folder.
  • Ablog-postA long-form article / blog post — masthead, hero image placeholder, article body with figures and pull quotes, author byline, related posts. Use when the brief asks for "blog", "article", "post", "essay", or "case study".
  • Ablog-postA long-form article / blog post — masthead, hero image placeholder, article body with figures and pull quotes, author byline, related posts. Use when the brief asks for "blog", "article", "post", "essay", or "case study".
  • Abuild-testRun the project's build / typecheck / lint / test commands and emit the build.passing + tests.passing signals devloop convergence reads.
  • Acard-twitterTwitter quote or data card designed to pair with a post.
  • Acard-xiaohongshuXiaohongshu-style knowledge cards, arranged as a swipeable multi-card carousel.
  • Aclinical-case-reportStructured medical case presentation for clinical rounds, conferences, and documentation. Generates SOAP-format or narrative case reports with physiologically accurate vitals, labs, and evidence-based plans. Use when the brief mentions "case report", "case presentation", "SOAP note", "clinical case", "ward rounds", "case summary", or "patient presentation".
  • Aclinical-case-reportStructured medical case presentation for clinical rounds, conferences, and documentation. Generates SOAP-format or narrative case reports with physiologically accurate vitals, labs, and evidence-based plans. Use when the brief mentions "case report", "case presentation", "SOAP note", "clinical case", "ward rounds", "case summary", or "patient presentation".
  • Acode-importRead an existing repository's structure into the project cwd as a normalised snapshot the agent can analyse without re-walking the tree on every turn.
  • Acodex-interactive-capability-mapTurn a long-form article, thread, memo, or product narrative into a compact clickable capability map with a workflow loop, use-case matrix, and responsive detail panel.

All agent skills → · MCP servers