article-cover

Generate professional article cover images as SVG files. Use when user wants to create cover/banner images for blog posts, technical articles, or documentation. Creates visually appealing covers with titles, diagrams, and tech-themed graphics.

16 stars

Best use case

article-cover is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Generate professional article cover images as SVG files. Use when user wants to create cover/banner images for blog posts, technical articles, or documentation. Creates visually appealing covers with titles, diagrams, and tech-themed graphics.

Teams using article-cover should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/article-cover/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/content-media/article-cover/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/article-cover/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How article-cover Compares

Feature / Agentarticle-coverStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Generate professional article cover images as SVG files. Use when user wants to create cover/banner images for blog posts, technical articles, or documentation. Creates visually appealing covers with titles, diagrams, and tech-themed graphics.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Article Cover SVG Generation

Generate professional, visually striking article cover images in SVG format for technical blogs, documentation, and articles.

## Critical Rules

1. **ViewBox Standard**: Use `viewBox="0 0 1200 630"` (social media friendly 1.91:1 ratio)

2. **Text Readability (MUST follow)**:
   - Main title: 44-48px, bold, high contrast
   - Subtitle: 28-32px, white or light color
   - Labels/tags: 14-16px
   - Never use fonts smaller than 11px

3. **Background Design**:
   - Always use gradient backgrounds (avoid flat solid colors)
   - Dark tech themes: `#0d1117` → `#161b22` (GitHub dark style)
   - Add subtle grid patterns or decorative elements for depth

4. **Visual Hierarchy**:
   - Title area: bottom 1/3 of the image (y: 420-540)
   - Diagram/illustration area: top 2/3 (y: 80-400)
   - Tags/labels: bottom edge (y: 550-600)

5. **Color Contrast**: Ensure text is readable against backgrounds
   - Light text on dark backgrounds
   - Use gradients for emphasis (orange/yellow for tech, blue/cyan for data)

## Design Patterns

### Tech Article Cover (Comparison Layout)
Best for: Performance comparisons, version upgrades, before/after scenarios

```
┌─────────────────────────────────────────────────┐
│  [Logo]                           [Badge: 100x+]│
│                                                 │
│  ┌─────────┐    VS    ┌─────────┐    ┌────────┐│
│  │ Before  │  ────►   │ Middle  │ ►  │ After  ││
│  │  ❌     │          │   ⚠     │    │   ✓    ││
│  └─────────┘          └─────────┘    └────────┘│
│                                                 │
│         Main Title (Large, Gradient)            │
│           Subtitle (Medium, White)              │
│                                                 │
│    [Tag1]  [Tag2]  [Tag3]  [Tag4]  [Tag5]      │
└─────────────────────────────────────────────────┘
```

### Tech Article Cover (Flow Layout)
Best for: Process explanations, architecture overviews

```
┌─────────────────────────────────────────────────┐
│  [Logo]                                         │
│                                                 │
│  [Input] ──► [Process Box] ──► [Output]         │
│     │            │                │             │
│     └────────────┴────────────────┘             │
│                                                 │
│         Main Title (Large, Gradient)            │
│           Subtitle (Medium, White)              │
│                                                 │
│    [Tag1]  [Tag2]  [Tag3]  [Tag4]              │
└─────────────────────────────────────────────────┘
```

## Color System

| Purpose | Background | Stroke/Text | Use Case |
|---------|------------|-------------|----------|
| Negative/Before | `#1c2128` | `#dc3545` | Problems, old version |
| Warning/Transition | `#1c2128` | `#ffcc02` | Partial solution, v1 |
| Positive/After | `#1c2128` | `#00f2fe` | Solution, new version |
| Success | `#22863a` | `#22863a` | Checkmarks, improvements |
| Accent | `#ff6b35` → `#ffcc02` | gradient | Titles, highlights |

## SVG Template

```svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 630">
  <defs>
    <!-- Background gradient -->
    <linearGradient id="bgGradient" x1="0%" y1="0%" x2="100%" y2="100%">
      <stop offset="0%" style="stop-color:#0d1117"/>
      <stop offset="100%" style="stop-color:#161b22"/>
    </linearGradient>
    <!-- Title gradient (orange/yellow for tech) -->
    <linearGradient id="titleGradient" x1="0%" y1="0%" x2="100%" y2="0%">
      <stop offset="0%" style="stop-color:#ff6b35"/>
      <stop offset="100%" style="stop-color:#ffcc02"/>
    </linearGradient>
    <!-- Glow effect for emphasis -->
    <filter id="glow">
      <feGaussianBlur stdDeviation="2" result="coloredBlur"/>
      <feMerge>
        <feMergeNode in="coloredBlur"/>
        <feMergeNode in="SourceGraphic"/>
      </feMerge>
    </filter>
  </defs>

  <!-- Background -->
  <rect width="1200" height="630" fill="url(#bgGradient)"/>

  <!-- Top accent bar -->
  <rect x="0" y="0" width="1200" height="5" fill="url(#titleGradient)"/>

  <!-- Logo area (top-left) -->
  <g transform="translate(50, 30)">
    <!-- Logo elements here -->
  </g>

  <!-- Main illustration area (center) -->
  <g transform="translate(600, 220)">
    <!-- Diagram/comparison elements here -->
  </g>

  <!-- Main title -->
  <text x="600" y="450" fill="url(#titleGradient)"
        font-family="Arial, sans-serif" font-size="46"
        text-anchor="middle" font-weight="bold">
    Article Title Here
  </text>

  <!-- Subtitle -->
  <text x="600" y="510" fill="#fff"
        font-family="Arial, sans-serif" font-size="28"
        text-anchor="middle">
    Subtitle or Description
  </text>

  <!-- Bottom tags -->
  <g transform="translate(600, 580)">
    <!-- Tag pills here -->
  </g>
</svg>
```

## Element Templates

### Comparison Box (with status icon)
```svg
<g transform="translate(X, Y)">
  <rect x="0" y="0" width="300" height="180" rx="10"
        fill="#1c2128" stroke="#COLOR" stroke-width="2"/>
  <text x="150" y="30" fill="#COLOR" font-size="17"
        text-anchor="middle" font-weight="bold">ICON Title</text>
  <!-- Content here -->
</g>
```

Status icons: `❌` (negative), `⚠` (warning), `✓` (positive)

### Performance Badge
```svg
<g transform="translate(X, Y)">
  <rect x="-60" y="-25" width="140" height="50" rx="25"
        fill="#00f2fe" opacity="0.15" stroke="#00f2fe" stroke-width="2"/>
  <text x="10" y="8" fill="#00f2fe" font-size="28"
        text-anchor="middle" font-weight="bold">100x+</text>
</g>
```

### Tag Pill
```svg
<rect x="X" y="-22" width="100" height="36" rx="18"
      fill="transparent" stroke="#COLOR" stroke-width="2"/>
<text x="X+50" y="4" fill="#COLOR" font-size="14"
      text-anchor="middle" font-weight="bold">TagName</text>
```

### Arrow (with label)
```svg
<g transform="translate(X, Y)">
  <path d="M 0 0 L 35 0" stroke="#COLOR" stroke-width="3" fill="none"/>
  <polygon points="35,0 25,-6 25,6" fill="#COLOR"/>
</g>
```

### Data Bar (for showing proportions)
```svg
<rect x="X" y="Y" width="WIDTH" height="12" rx="2"
      fill="#COLOR" opacity="0.8"/>
```

## Workflow

1. **Understand the article**: What's the main topic? Is it a comparison, tutorial, or overview?

2. **Choose layout pattern**:
   - Comparison → Use 2-3 column comparison layout
   - Process/Flow → Use flow diagram layout
   - Single concept → Use centered illustration

3. **Extract key elements**:
   - Main title (keep concise, 10-15 Chinese chars or 5-8 English words)
   - Subtitle (descriptive, can be longer)
   - Key metrics (performance numbers, version info)
   - Tags (3-5 relevant keywords)

4. **Design the illustration**:
   - Use simple shapes (rectangles, arrows)
   - Show the core concept visually
   - Use color to differentiate states/versions

5. **Generate SVG**: Follow the template, ensure all text is readable

## Output

- Filename: `{article-slug}-cover.svg`
- Location: Same directory as the article or `assets/` folder
- Tell user: Can be opened in browser, converted to PNG via Inkscape/browser screenshot

## Tips

- **Chinese text**: Use `font-family="Arial, sans-serif"` which has good CJK support
- **Emphasis**: Use `filter="url(#glow)"` sparingly on key elements
- **Spacing**: Keep 20-40px padding around text elements
- **Testing**: Open SVG in browser to verify rendering before finalizing

Related Skills

article

16
from diegosouzapw/awesome-omni-skill

Generate technical articles and documentation using AI. Use for writing blog posts, documentation, and technical content.

article-title-optimizer

16
from diegosouzapw/awesome-omni-skill

This skill analyzes article content in-depth and generates optimized, marketable titles in the format 'Title: Subtitle' (10-12 words maximum). The skill should be used when users request title optimization, title generation, or title improvement for articles, blog posts, or written content. It generates 5 title candidates using proven formulas, evaluates them against success criteria (clickability, SEO, clarity, emotional impact, memorability, shareability), and replaces the article's title with the winning candidate.

article-recommender

16
from diegosouzapw/awesome-omni-skill

Generate three-version article recommendations (standard, concise, and personal commentary) in both Chinese and English for BestBlogs.dev weekly newsletter. Use when users request article recommendations,推荐语,推荐理由,or ask to write recommendations for newsletter content. Triggered by phrases like "帮我编写推荐理由", "生成推荐语", "write a recommendation", or when presenting curated content.

article-image-generator

16
from diegosouzapw/awesome-omni-skill

Generates consistent, professional cover images for business/fiscal articles using Ideogram with standardized prompts and naming conventions. Use when creating new articles, updating missing covers, or maintaining visual consistency across the content library.

article-extractor

16
from diegosouzapw/awesome-omni-skill

Extract clean article content from URLs (blog posts, articles, tutorials) and save as readable text. Use when user wants to download, extract, or save an article/blog post from a URL without ads, navigation, or clutter.

article-analysis

16
from diegosouzapw/awesome-omni-skill

Analyze blog posts and web articles by fetching content from URLs. Use when the user mentions blog post, article, Substack, Medium, web page, newsletter, or provides a URL to analyze.

Article Writing

16
from diegosouzapw/awesome-omni-skill

Structure and style guidance for law review articles

x-article-publisher-skill

16
from diegosouzapw/awesome-omni-skill

Publish articles to X/Twitter

article-to-x

16
from diegosouzapw/awesome-omni-skill

将3000-5000字长篇文章转换为200-500字X平台(微博/小红书等)内容,保持真实风格,提供3种开头风格。当用户提到"转微博"、"发小红书"、"社交媒体"、"缩短内容"、"精简"时使用此技能。

article-queue

16
from diegosouzapw/awesome-omni-skill

Manage article task queue - add, filter, update status, and track multi-language outputs

Disaster Recovery

16
from diegosouzapw/awesome-omni-skill

Disaster Recovery encompasses strategies and procedures for recovering from catastrophic failures and ensuring business continuity. This includes backup strategies, failover mechanisms, data recovery

apify-influencer-discovery

16
from diegosouzapw/awesome-omni-skill

Find and evaluate influencers for brand partnerships, verify authenticity, and track collaboration performance across Instagram, Facebook, YouTube, and TikTok.