← Moda - Slides & DesignsCONTENT HISTORY
WHAT CHANGED
Update to Moda - Slides & Designs
Snapshot Oct 26, 2026 · 18:06 UTC · version 1.0.2
Collection source: downloaded plugin package.
First saved snapshot
No earlier snapshot is available to establish a change.
Save Moda - Slides & Designs and check future changes in Following.
Up to 10 plugins free · no card required.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Static ads: platform-native single ads and multi-size display banner sets (IAB) — one message across sizes, exported together.",
"included_files": [
{
"relative_path": "references/ads.md",
"size_in_bytes": 6686
},
{
"relative_path": "references/charts.md",
"size_in_bytes": 5659
},
{
"relative_path": "references/design-quality.md",
"size_in_bytes": 22265
},
{
"relative_path": "references/edit-code.md",
"size_in_bytes": 16488
},
{
"relative_path": "references/export.md",
"size_in_bytes": 7949
},
{
"relative_path": "references/gotchas.md",
"size_in_bytes": 8693
},
{
"relative_path": "references/markup.md",
"size_in_bytes": 23958
},
{
"relative_path": "references/multi-unit-workflow.md",
"size_in_bytes": 13300
},
{
"relative_path": "references/no-brand-design.md",
"size_in_bytes": 14257
},
{
"relative_path": "references/omni-and-media.md",
"size_in_bytes": 7338
},
{
"relative_path": "references/social-craft.md",
"size_in_bytes": 12086
}
],
"name": "moda-social-ads",
"skill_md_contents": "---\nname: moda-social-ads\ndescription: >-\n Static ads: platform-native single ads and multi-size display banner sets\n (IAB) — one message across sizes, exported together.\n---\n\n# moda-social-ads\n\n**PREREQUISITE — `load_skill(\"moda-core\")` once per session** (step-0, write\ncontract, free/metered map). Already loaded? Skip ahead. If you cannot load\nit, the non-negotiables: call `moda_bootstrap` before anything; `brand_list`\nbefore creating; revision-guarded writes use `expected_revision` from your last read.\n`canvas_edit_image` captures its own target state and has no revision argument.\nOn `stale_revision`, re-read and retry once; send the canvas link\nthe moment it exists; stuck or failed? `ask_expert(\"<question>\")` — free and\nfast, never guess.\n\n## Sizes and defaults\n\nThe IAB core set (`category='web-ads'`), plus any size the user names:\n\n| Size | Role | Notes |\n|---|---|---|\n| 300×250 | medium rectangle | the workhorse — design the MASTER here |\n| 728×90 | leaderboard | hostile: one line, logo, CTA — nothing else |\n| 160×600 | skyscraper | vertical stack, CTA at the bottom |\n| 300×600 | half page | the roomy one; the master usually scales here first |\n| 320×50 | mobile banner | hostile: type only, 4–6px off every edge |\n| 970×250 | billboard | the only size with room for imagery |\n\nPlatform-native single ads (`category='web-ads'` or `'social'`): IG story ad\n1080×1920 (bottom reserved from y 1400 for CTA chrome), Facebook feed ad\n1200×628, IG feed ad 1080×1080 or 1080×1350.\n\nCraft, in one pass: the Rule of One — one audience, one promise, one ask.\nHierarchy is hook → brand → CTA, with brand and CTA both visible; the CTA is\nbutton-shaped and the highest-contrast element (\"See the demo\", never \"Learn\nmore\"). Keep type and CTA 8–10px off every edge — networks add a border at\nserve time. Photography rarely survives these sizes: prefer solid colour,\ngradients, shapes, type, and generated patterns.\n\n## Recipe — the size set (master first)\n\n1. `canvas_create(name='[Campaign] — ads', intent='[the one promise]', width=300, height=250, category='web-ads', brand_kit_id='[KIT]')` — send the link immediately.\n2. Design and APPROVE the master on page 1: `canvas_apply_markup(canvas_ref, page, markup, screenshot=true)`, then at most one repair write. Do not adapt anything until the master is right.\n3. Add one page per size in `canvas_edit` code (`create('page', { width: 728, height: 90 })`), repeated for each size in the set, then re-read for the fresh page ids.\n4. Re-COMPOSE each size (never squash): one markup apply per page, serial on the\n one canvas — the same message, re-laid for the shape. Check the two hostile\n sizes (728×90, 320×50) first; they break layouts before the others do.\n5. `canvas_screenshot(canvas_ref, pages=[IDS])` in ≤3-page batches; judge the set\n for one voice, one CTA, one brand presence. ONE repair round, then export.\n6. `export(canvas_ref, format='png', pixel_ratio=2)` — a multi-page png export\n arrives as one zip: the set ships together, one download for the trafficker.\n\n## Recipe — one platform-native ad\n\n1. `canvas_create(name='[Campaign] — [placement]', intent='[the one promise]', width=[W], height=[H], category='web-ads', brand_kit_id='[KIT]')` — link immediately.\n2. Write the idea in one sentence first: \"For [audience], [brand] is the\n [category] that [single claim].\" Kill every secondary message.\n3. Author in ONE apply; keep the CTA inside the placement's chrome-free zone.\n4. `canvas_screenshot(canvas_ref)` — squint test: blurred, does it still\n show what it is for and where the eye lands? Fix what fails in at most ONE repair write, captured the same way, then ship.\n5. `export(canvas_ref, format='png', pixel_ratio=2)` — hand over the link.\n\n## Examples\n\n- \"banner ads in the standard sizes\" → size-set recipe, IAB core, one zip.\n- \"an Instagram ad for the spring sale\" → platform-native recipe at 1080×1350.\n- \"just a 728×90 and a 300×250\" → size-set recipe with those two pages only.\n- \"an animated banner ad\" → not this skill: load moda-video (motion wins).\n\n## Errors\n\nAny typed error → load moda-core and read its recovery reference.\n`canvas_busy` is likeliest here (many pages, many applies): applies to one\ncanvas stay SERIAL — they serialize on the server anyway, so fanning them out\nbuys nothing and can come back busy.\n\n## Make it recurring\n\nA campaign refresh on a cadence → moda-automate; the approved size-set skeleton\n→ moda-templates, so the next campaign starts at step 4.\n\nSee also: moda-social — organic posts, carousels, one-off graphics ·\nmoda-core — the contract, recovery, everything Moda can do.\n\n## References\n\n| Doc | Load when |\n|---|---|\n| references/ads.md | depth: IAB set, per-size composition patterns, CTA and stopping power |\n| references/markup.md | before any markup apply |\n| references/export.md | zip semantics, pixel ratio, warnings |\n| references/no-brand-design.md | no kit is active — inventing the identity: palette law, type, imagery, layout system |\n"
}SHA-256 of public snapshot: 786329776ff40cbb32707a5935d7f378b131b4857300a65da06ad951acda8cc8