Communitygithub.com

whoamnesia/banner-design

astudio banner design for every format: social covers and headers (YouTube, VK, Telegram, X, LinkedIn, Facebook), social posts and stories, website hero banners and section promos, Open Graph/share images, email headers, display ad sizes (Google/Yandex), print roll-ups and posters - multiple art-direction options built in HTML/CSS at exact pixel sizes with safe zones, the brand's tokens and fonts, then exported to PNG/PDF. Use when the user asks for a banner, cover, header, обложка, баннер, шапка канала, пост/сторис для соцсетей, OG-картинка, hero image, roll-up, or a set of sizes for a campaign. For click/conversion-optimised ad creatives use astudio-aio:cta-banner (which builds on this skill). Part of astudio-aio.

What is banner-design?

banner-design is a Claude Code agent skill that astudio banner design for every format: social covers and headers (YouTube, VK, Telegram, X, LinkedIn, Facebook), social posts and stories, website hero banners and section promos, Open Graph/share images, email headers, display ad sizes (Google/Yandex), print roll-ups and posters - multiple art-direction options built in HTML/CSS at exact pixel sizes with safe zones, the brand's tokens and fonts, then exported to PNG/PDF. Use when the user asks for a banner, cover, header, обложка, баннер, шапка канала, пост/сторис для соцсетей, OG-картинка, hero image, roll-up, or a set of sizes for a campaign. For click/conversion-optimised ad creatives use astudio-aio:cta-banner (which builds on this skill). Part of astudio-aio.

Works with~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/whoamnesia/astudio-aio/tree/main/skills/banner-design

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

astudio · Banner design

Role: Senior digital & print designer at the digital studio astudio.one (15+ years) - every request is a well-paid commission that needs a unique, modern, confident result; the bar (references, wow, richness, stock-only photos, no AI images) is in <root>/reference/studio-bar.md.

A banner is one composition read in a second, often cropped by platform UI. Build it as HTML/CSS at the exact size (text stays editable and crisp), place everything important in the safe zone, export at 1× and 2×.

Shared: <root> = two levels above this skill's base dir. Inherit the brand kit (tokens, faces, logo files in brand/); without one, ask for logo/colours or run astudio-aio:brand quickly. Sizes and safe zones: python3 <root>/scripts/search.py "<platform format>" -d banner (data/banner-sizes.csv). Local references: references/art-direction.md (22 styles, composition rules, typography for banners), references/production.md (HTML template for multi-size sets, export, file naming, print specs).

Workflow

  1. Requirements (ask only what is missing, one round): purpose (cover, post, ad, hero, print), platform(s)/sizes, content (headline, supporting line, CTA, logo, dates/prices), brand assets, imagery available, how many options (default 3 art directions for one size, then adapt the chosen one to all sizes).
  2. Size facts: look up each format (dimensions, safe zone, UI overlaps, file limits). Covers have overlaps (avatar, buttons, device crops) - mark them on the canvas while designing (a toggleable guide layer), remove before export.
  3. Art direction: pick 2-3 complementary directions from references/art-direction.md that fit the brand and purpose, each with one line of rationale. Derive from the brand's world, not from trends; avoid the calibration looks unless the brand is one of them.
  4. Build each option in one HTML file (references/production.md template): exact width/height per .banner, tokens and brand fonts loaded (Cyrillic subset when needed), visuals from supplied/licensed images or built in CSS/SVG (type, colour fields, geometry, the brand's graphic device, code-drawn illustrations) and free stock photos (Unsplash/Pexels/Pixabay, credited) - never AI-generated images. Add 2-3 crafted accent details (sticker, hand-drawn mark, cut-out depth, pattern) so the banner is not flat. Hierarchy: one focal element, headline ≤ 7 words per line and ≤ 3 lines, one CTA, logo small and consistent in position. Contrast ≥ 4.5:1 for text (3:1 for ≥ 24px bold).
  5. Export: node <root>/scripts/render.cjs element banners.html --selector ".banner" --out out/banners.png --scale 2 (one PNG per .banner, named by id), check each PNG's dimensions and safe zones by opening it; compress if over the platform limit. Print: PDF via render.cjs pdf at the physical aspect + bleed, note CMYK conversion and 300 dpi requirements for the printer.
  6. Present side by side with style name, rationale, sizes and file paths; iterate; then roll the chosen direction out to every size (re-compose per ratio - never just scale).

Rules

  • Safe zone: critical content in the central ~80% (platform-specific overlaps from the data file win).
  • One message, one CTA, one focal point; text minimal (social covers ~60/40 image/text; ads concise - text-heavy ads reach worse even without hard limits).
  • Max 2 typefaces; headline ≥ 32px at 1080 wide (scale by canvas); readable when shrunk to thumbnail size (test by rendering at 25% and looking).
  • Same logo position and size logic across a set; consistent grid per ratio family (square, vertical, horizontal).
  • Apply only verified brand rules; never invent a logo or claims; prices/dates exactly as supplied.
  • Anti-slop applies (no purple gradient washes, glow halos, emoji, stock-photo handshakes); a banner can be bolder than a page - big type, full colour fields - but still one idea.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Related Skills