table-image
ABOUTME: Render markdown tables and diagrams as hand-drawn sketch images via Gemini
ABOUTME: Converts tabular data into ink-style editorial illustrations with wide aspect ratio
Table Image Skill
Render markdown tables and diagrams as hand-drawn sketch images using Gemini's image generation.
Workflow
1. Receive Table Content
Get the markdown table from the user. The table should be in standard markdown format.
2. Construct the Prompt
Build a prompt using this structure:
Black and white hand-drawn sketch, loose ink strokes. A clean technical table drawn on
white paper. Minimalist, high contrast, editorial tech illustration. Compact layout,
minimal margins, cropped tightly to the table edges, the table fills the frame. --ar 24:9
[paste the full markdown table here]
3. Generate
uv run ~/.claude/skills/_generate_image.py "<constructed prompt>" --ar 24:9 -o table.png
4. Report
Report the saved file path and suggest reviewing the image.
Example
Input table:
| Feature | Go | Python | Ruby |
|---------|-----|--------|------|
| Concurrency | goroutines | asyncio | threads |
| Typing | static | dynamic | dynamic |
| Speed | fast | moderate | moderate |
Prompt:
Black and white hand-drawn sketch, loose ink strokes. A clean technical table drawn on
white paper. Minimalist, high contrast, editorial tech illustration. Compact layout,
minimal margins, cropped tightly to the table edges, the table fills the frame. --ar 24:9
| Feature | Go | Python | Ruby |
|---------|-----|--------|------|
| Concurrency | goroutines | asyncio | threads |
| Typing | static | dynamic | dynamic |
| Speed | fast | moderate | moderate |
Notes
- Requires
GEMINI_API_KEYorGOOGLE_API_KEYin environment - Default output:
table.pngin current directory - Default aspect ratio: 24:9 (wide, fills frame with table)
- Uses shared script:
~/.claude/skills/_generate_image.py - For complex tables, results improve when the table has clear headers and consistent column widths
More from maroffo/claude-forge
newsletter-digest
Process newsletters into Second Brain digest. Use when user wants to process newsletters, create digest, or catch up on subscriptions. Not for web clippings (use process-clippings) or email bookmarks (use process-email-bookmarks).
22apple-swift
Apple platform development with Swift, SwiftUI, async/await, and performance. Use when working with .swift files, Package.swift, Xcode projects, or building for iOS/macOS/watchOS/visionOS.
20react-nextjs
React + Next.js App Router development. Use when working with .tsx/.jsx files, next.config, or user asks about Server Components, data fetching, state management, forms, or React testing.
20email-cleanup
Clean up Gmail - archive old emails, delete promotions, manage storage. Use when user wants to clean inbox, archive emails, or free up space.
19inbox-triage
Review and prioritize Gmail inbox. Use when user wants to check email, review inbox, or see what needs attention.
19project-analyzer
Analyze codebase and create CLAUDE.md documentation. Use when analyzing project, understanding codebase, or creating documentation.
17