indesign-conversion
Skill19 starsChanged 11 days agoMITView on GitHub
Use when converting an Adobe InDesign document (.idml or PDF) into a WordPress FSE block theme. Covers prerequisites, the parse → map-tokens → generate pipeline, expected outputs, and gotchas (CMYK→sRGB shifts, missing fonts, oversized print images). Keywords: InDesign to WordPress, IDML, IDML to FSE, InDesign PDF, print to web, design tokens from InDesign
1 other project uses a version of this.
Adopted by
Most recently taken up by
- PMDevSolutions/Aureliustheir own version, first seen Oct 24, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- PMDevSolutions/Aurelius★ 9same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository16 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- block-pattern-creationSkill
- canva-to-fse-autonomous-workflowSkill
- create-blog-articleSkill
- figma-to-fse-autonomous-workflowSkill
- fse-block-theme-developmentSkill
- fse-pattern-first-architectureSkill
- lintSkill
- scaffold-blockSkill
- testSkill
- visual-qa-verificationSkill
- wordpress-hook-integrationSkill
- wordpress-internationalizationSkill
- wordpress-security-hardeningSkill
- wordpress-testing-workflowsSkill
- wp-cli-workflowsSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 22
Do not use this for live Figma or Canva sources — use figma-to-fse-autonomous-workflow or canva-to-fse-autonomous-workflow instead.
- Distinctive: line 34
Convert: Run the unified CLI:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
InDesign Conversion
Overview
This skill converts an Adobe InDesign document into a complete WordPress Full Site Editing (FSE) block theme using the @flavian/pipeline InDesign stages. It parses an exported .idml (or a PDF fallback), maps the document's paragraph/character styles and swatches into theme.json design tokens, and generates FSE block patterns (one per spread), templates, header/footer parts, and a merged theme.json.
Key principle: the design system comes from the document. Swatches → color palette, paragraph styles → typography scale, frame geometry → spacing — then patterns reference those token slugs, never inline values.
Pair this skill with the indesign-to-wordpress agent, which runs the steps end-to-end and reviews the generation report for follow-ups.
When to use
- A client/designer hands you an InDesign layout (brochure, flyer, catalog, report) and wants it as a WordPress theme.
- You have an exported
.idmlfile, or only a PDF exported from InDesign. - You want a deterministic, re-runnable conversion (same input → same output, no diff churn).
Do not use this for live Figma or Canva sources — use figma-to-fse-autonomous-workflow or canva-to-fse-autonomous-workflow instead.
Prerequisites
- An exported
.idml(strongly preferred). In InDesign:File → Export → Format: InDesign Markup (IDML). IDML preserves stories, frames, styles, swatches, and master spreads. - Or a PDF fallback.
File → Export → Adobe PDF. PDF reconstruction is lossy — text is rebuilt from glyph runs, styles are synthesized from font sizes, and every approximation is recorded as a fidelity warning. Use only when no.idmlis available. - Node 20+ and the workspace installed (
pnpm install). - Image bytes (optional). Patterns reference images by a deterministic filename; to stage the actual bytes, point
--asset-dirat the IDML package'sLinks/folder or a directory of extracted PDF assets.
Workflow
- Branch.
git checkout -b indesign-import/<slug>— never convert onmain. - Convert. Run the unified CLI:
This parses, maps tokens, and generates the theme in one step.flavian pipeline indesign <input.idml> --output themes/<slug> # add --seed-content to also emit bin/seed-content.sh (a draft page per spread) # add --asset-dir <dir> to stage real image bytes into assets/ - Review the report. Open
themes/<slug>/indesign-pipeline-report.md(and the.jsontwin for tooling). Act on unmapped frames, font fallbacks, out-of-gamut colors, and missing alt text. - Verify. Activate the theme locally and open the Site Editor; the imported patterns appear under InDesign Imports in the inserter. Confirm
theme.jsonis valid (the report says so). - Seed media. Drop image bytes into
themes/<slug>/assets/(if not already staged) and runbash themes/<slug>/bin/import-media.sh.
Expected outputs
themes/<slug>/
├── theme.json # base theme merged with the mapped tokens (schema-valid)
├── style.css, functions.php # theme header + bootstrap (registers the InDesign Imports category)
├── patterns/spread-1.php … # one block pattern per spread, category: indesign-imports
├── templates/ # index.html (stitches the patterns), page.html, 404.html
├── parts/header.html, footer.html # from master-spread chrome, or sensible defaults
├── bin/import-media.sh # WP-CLI media import for staged assets
├── indesign-pipeline-report.md # human-readable generation report
└── indesign-pipeline-report.json # machine-readable counterpartFrame → block mapping
- Text frames →
core/heading/core/paragraph, grouped incore/group(role from the paragraph-style name:Heading N,Body,Caption). - Image frames →
core/image, orcore/coverwhen text sits on top of the image. - Side-by-side frames →
core/columns. - Master-spread top/bottom chrome → header/footer template parts.
Worked example (committed fixture)
The pipeline ships a code fixture (no committed binaries) and an end-to-end smoke test that builds a two-spread brochure, runs the real CLI, and asserts the theme is valid:
node scripts/indesign-fse/smoke-test.mjs
# ✓ smoke: InDesign pipeline generated a valid theme (2 spreads, theme.json v3)To convert your own document end-to-end and inspect a generated pattern:
flavian pipeline indesign ./brochure.idml --output themes/brochure
sed -n '1,20p' themes/brochure/patterns/spread-1.php
cat themes/brochure/indesign-pipeline-report.mdYou can also drive the stages individually (useful for debugging):
node packages/pipeline/bin/parse-idml.mjs brochure.idml > ir.json
node packages/pipeline/bin/map-tokens.mjs ir.json --out-dir ./tokens
node packages/pipeline/bin/generate-theme.mjs ir.json --out-dir themes/brochureCommon gotchas
- CMYK/LAB → sRGB shifts. Print color spaces don't map 1:1 to screen. The mapper converts and flags any out-of-gamut swatch in the report; expect brand colors to look slightly different on screen and confirm them with the designer.
- Missing / substituted fonts. InDesign fonts that aren't web-safe fall back via
packages/pipeline/config/font-map.json(often a Google font). The report lists every fallback — confirm each, or self-host the real font and update the font map. - Oversized print images. Print assets are often huge (300 DPI, CMYK). Resize/recompress for web and convert CMYK images to sRGB before importing, or they'll bloat the page and render with muddy color.
- PDF fidelity. A PDF parse always carries warnings — text reconstructed from glyphs, synthesized styles, dropped vector art. Prefer
.idml; treat PDF output as a starting point that needs review. - Empty alt text. Generated images have
alt="". Add meaningful alt text (the agent proposes some from surrounding story text) before shipping. - Don't hand-edit patterns destructively. Patterns are deterministic; re-running the pipeline regenerates them. Fix the source document or the pipeline rather than patching generated files.
Related
- Agent:
indesign-to-wordpress(orchestrates + reviews the report) - Docs:
docs/pipelines/indesign.md,docs/pipeline/indesign-output-generator.md - Skills:
fse-pattern-first-architecture,block-pattern-creation,visual-qa-verification
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

