suxrobgm/rasterize/render
- community
Checking that the SKILL.md file is still in the repository.
Generate raster images (PNG, JPEG, WebP) from natural language prompts using Python rendering engines. Covers graphics, charts, layouts, and procedural art. Not for SVG output.
Install
npx vskill@latest install suxrobgm/rasterize/renderSKILL.md
Rasterize — Multi-Engine Raster Image Generation
Generate professional raster images by routing each request to the best rendering engine. You write Python code; the engine does the pixel work.
Quick Start
- Read the user's request
- Pick an engine using the routing table below
- Read the engine's reference doc from
./references/ - Write a self-contained Python script that outputs to the target path
- Run the script using
pdm run python <script.py>(to use the plugin's venv), verify the output, deliver the image
Environment: This plugin uses a pdm-managed virtual environment.Always run generation scripts withpdm run pythonfrom the plugin root.If pdm is not set up yet, runpython scripts/setup.pyfirst.
Engine Routing Table
| Request type | Engine | Reference file | |
|---|---|---|---|
| Photo manipulation, compositing, filters, pixel ops, simple graphics | Pillow | ./references/pillow.md | |
| Clean vector-style graphics, logos, icons, anti-aliased shapes, typography-heavy designs | Cairo | ./references/cairo.md | |
| Statistical charts, scientific plots, data visualization (static) | Matplotlib + Seaborn | ./references/matplotlib.md | |
| Complex interactive-looking dashboards, rich data viz with annotations | Plotly (static export) | ./references/plotly.md | |
| Complex layouts, HTML/CSS designs, UI mockups, anything with web fonts or CSS effects | Playwright (HTML→PNG) | ./references/playwright.md |
Routing decision hints
- If the request mentions "chart", "plot", "graph", "histogram", "scatter",
"heatmap", or data columns → Matplotlib/Seaborn (or Plotly for fancier output)
- If the request is about a logo, icon, badge, geometric design, or
anything that needs crisp anti-aliased curves → Cairo
- If the request says "banner", "social media post", "thumbnail" with
text overlays on photos → Pillow
- If the request describes a full-page layout, poster with complex
typography, card design, or UI mockup → Playwright
- If the request is about generative/procedural/algorithmic art → Cairo
(or Pillow if it's pixel-manipulation art like fractals)
- When in doubt between Pillow and Cairo → prefer Cairo (better quality)
- When in doubt between Matplotlib and Plotly → prefer Matplotlib
(simpler, faster)
Multi-engine compositions
Some requests need two engines. Common combos:
- Matplotlib → Pillow: Generate a chart, then composite it onto a
branded background with logos and text overlays
- Cairo → Pillow: Draw clean vector shapes, then apply raster effects
(blur, noise, texture)
- Playwright → Pillow: Render an HTML layout, then crop/resize/optimize
When combining engines, save intermediate outputs as temporary PNGs and load them in the second engine.
Shared References
These files contain cross-engine patterns — read them before the engine docs:
./shared/setup.md— Installation, pdm setup, running scripts./shared/fonts.md— Font directory resolution, per-engine loading, font selection guide./shared/canvas.md— Dimensions, size presets, retina scaling, output saving (PNG/JPEG/WebP)./shared/themes.md— Dark/light themes, color tokens, categorical/sequential/diverging palettes
Workspace
All generated files go into the generated/ directory at the plugin root:
- Scripts: Save as
generated/<slug>_render.pywhere<slug>is a
short kebab-case name derived from the request (e.g., social-card_render.py)
- Output images: Save as
generated/<slug>.png(or.jpg/.webp) - Intermediates: Save temporary files in
generated/too — prefix with_tmp_ - The
generated/directory is gitignored. Do NOT place scripts inscripts/
or output in output/ — those are not for generated artifacts.
- After delivering the final image, clean up intermediate
_tmp_*files. - Keep the generation script after completion — the user may want to
iterate ("make the text bigger", "change the color") and the script enables re-rendering without rewriting from scratch.
- If the user explicitly asks to clean up, delete both the script and output.
Script Structure
Every generation script should follow this pattern:
Design Principles
When generating images, aim for professional quality:
- Whitespace: Leave generous margins (at least 5-8% of canvas size).
Content should breathe.
- Color: Use cohesive palettes. When the user doesn't specify colors,
choose a palette with 1 primary, 1 accent, 1-2 neutrals. Avoid pure black (#000); use near-black (#1a1a2e or #0f172a) instead. Avoid pure white (#fff) on large areas; use off-white (#fafafa, #f8fafc).
- Typography: Maximum 2 font families per image. Establish clear
hierarchy (title → subtitle → body → caption) through size and weight.
- Alignment: Use a grid. Align elements to consistent baselines and
gutters. Misalignment is the #1 tell of AI-generated graphics.
- Contrast: Ensure text passes WCAG AA (4.5:1 ratio). Use a contrast
checker function if needed.
Error Handling
- If a required engine is not installed, follow
./shared/setup.md. - If a font file is missing, fall back to a safe default from the
bundled collection (see ./shared/fonts.md). Never use system fonts without checking availability.
- If rendering fails, check the error, fix the script, and retry.
Common issues: missing font path, wrong image mode, Cairo surface not flushed before save.
Engine Reference Docs
Before writing a generation script, ALWAYS read the relevant engine reference doc from ./references/. These contain engine-specific patterns, gotchas, and helper snippets that prevent common mistakes.
./references/pillow.md— Pillow patterns and helpers./references/cairo.md— PyCairo patterns and helpers./references/matplotlib.md— Matplotlib + Seaborn patterns./references/plotly.md— Plotly static export patterns./references/playwright.md— HTML-to-PNG via Playwright
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/render/SKILL.md
Popularity
- Repository stars
- 4
- Repository forks
- 1
- 7-day trend score
- 8
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/suxrobgm/rasterize/render)