CtrlK
BlogDocsLog inGet started
Tessl Logo

slide-deck-images

Generate professional slide-deck SVG images (not PPTX/PDF) when users ask to “create slides / slide deck / PPT” and need image outputs.

64

Quality

78%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./scientific-skills/Other/slide-deck-images/SKILL.md
SKILL.md
Quality
Evals
Security

Source: https://github.com/aipoch/medical-research-skills

When to Use

Use this skill when you need to produce slide images as SVG files (plus outline/prompts), especially when:

  1. A user asks for a “slide deck”, “PPT”, or “presentation” but explicitly wants images (SVG) rather than PPTX/PDF.
  2. You need a readable, shareable deck optimized for scrolling/swiping (each slide stands alone without a presenter).
  3. You want a style-driven deck using presets (e.g., corporate, minimal, blueprint) or custom style dimensions.
  4. You need a structured workflow with optional review gates (outline review, prompt review) before generating images.
  5. You need to regenerate specific slides (e.g., only slide 3 or slides 2,5,8) without rebuilding everything.

Key Features

  • SVG-only output: Generates .svg slide images (no PPTX/PDF generation).
  • Deterministic file structure:
    • Output directory: slides-svg/
    • Naming: NN-slide-[slug].svg
  • End-to-end workflow: Analyze → confirm → outline → prompts → SVG render → summary.
  • Style system:
    • Preset styles (e.g., blueprint, corporate, sketch-notes, notion, etc.)
    • Custom style dimensions: texture, mood, typography, density
    • Automatic preset recommendation based on content signals
  • Review controls:
    • --outline-only, --prompts-only, --images-only
    • Optional outline/prompt review steps via confirmation questions
  • Selective regeneration: --regenerate <N> or --regenerate 2,5,8
  • No image-model dependency: SVG rendering is performed by a Python script using configuration parameters.

Dependencies

  • Python 3.10+
  • Project script: scripts/generate_svg.py (invoked locally)
  • Reference/spec files (used by the workflow):
    • references/analysis-framework.md
    • references/outline-template.md
    • references/base-prompt.md
    • references/layouts.md
    • references/design-guidelines.md
    • references/dimensions/*.md
    • references/styles/<style>.md
    • references/config/preferences-schema.md

Example Usage

CLI (skill invocation)

/slide-deck "Explain OAuth 2.0 for product managers"
/slide-deck "Explain OAuth 2.0 for product managers" --style corporate
/slide-deck "Explain OAuth 2.0 for product managers" --audience executives
/slide-deck "Explain OAuth 2.0 for product managers" --lang en
/slide-deck "Explain OAuth 2.0 for product managers" --slides 10
/slide-deck "Explain OAuth 2.0 for product managers" --outline-only
/slide-deck "Explain OAuth 2.0 for product managers" --prompts-only
/slide-deck "Explain OAuth 2.0 for product managers" --images-only
/slide-deck "Explain OAuth 2.0 for product managers" --regenerate 3
/slide-deck "Explain OAuth 2.0 for product managers" --regenerate 2,5,8
/slide-deck  # then paste content

Generate SVG files locally

The SVG renderer reads parameters from its configuration area and does not use CLI arguments:

python scripts/generate_svg.py

Expected outputs:

  • outline.md
  • prompts/ (one prompt file per slide)
  • slides-svg/NN-slide-[slug].svg

Implementation Details

Output constraints

  • Format: .svg
  • Output directory: slides-svg/
  • Filename pattern: NN-slide-[slug].svg

Style system

Presets

PresetCharacteristicsTypical use
blueprint (default)grid + cool + technical + balancedarchitecture, system design
chalkboardorganic + warm + handwritten + balancededucation, tutorials
corporateclean + professional + geometric + balancedpitches, proposals
minimalclean + neutral + geometric + minimalexecutive briefings
sketch-notesorganic + warm + handwritten + balancededucation, tutorials
watercolororganic + warm + humanist + minimallifestyle, wellness
dark-atmosphericclean + dark + editorial + balancedentertainment, gaming
notionclean + neutral + geometric + denseproduct demos, SaaS
bold-editorialclean + vibrant + editorial + balancedlaunches, keynotes
editorial-infographicclean + cool + editorial + denseexplainers, research
fantasy-animationorganic + vibrant + handwritten + minimalstorytelling
intuition-machineclean + cool + technical + denseacademia, technical docs
pixel-artpixel + vibrant + technical + balancedgaming, dev talks
scientificclean + cool + technical + densemedical, biology, chemistry
vector-illustrationclean + vibrant + humanist + balancedcreative, kids content
vintagepaper + warm + editorial + balancedhistory, culture

Style dimensions

DimensionOptionsMeaning
Textureclean, grid, organic, pixel, paperbackground/texture treatment
Moodprofessional, warm, cool, vibrant, dark, neutraltone and color temperature
Typographygeometric, humanist, handwritten, editorial, technicalheading/body typographic feel
Densityminimal, balanced, denseinformation density per slide

Full dimension specs: references/dimensions/*.md

Automatic preset recommendation (signals → preset)

Content signalsPreset
tutorial, learn, education, guide, beginnersketch-notes
classroom, teaching, school, chalkboardchalkboard
architecture, system, data, analysis, technicalblueprint
creative, children, kids, cutevector-illustration
briefing, academic, research, bilingualintuition-machine
executive, minimal, clean, simpleminimal
saas, product, dashboard, metricsnotion
investor, quarterly, business, corporatecorporate
launch, marketing, keynote, magazinebold-editorial
entertainment, music, gaming, atmosphericdark-atmospheric
explainer, journalism, science communicationeditorial-infographic
story, fantasy, animation, magicalfantasy-animation
gaming, retro, pixel, developerpixel-art
biology, chemistry, medical, scientificscientific
history, heritage, vintage, expeditionvintage
lifestyle, wellness, travel, artisticwatercolor
Defaultblueprint

Design philosophy (reader-first decks)

Decks are designed for reading and sharing, not live presenting:

  • Each slide is understandable without narration.
  • Logical flow when scrolling/swiping.
  • Each slide includes necessary context.
  • Optimized for social sharing.

See: references/design-guidelines.md (visual hierarchy, density, colors, fonts, recommendations).
Layouts: references/layouts.md.

Workflow and state files

Step 1: Setup & Analyze

  1. Load preferences from EXTEND.md (if present) and summarize:

    • Style (preset/custom)
    • Audience (or auto-detect)
    • Language (or auto-detect)
    • Review enabled/disabled
      Schema: references/config/preferences-schema.md
  2. Analyze content (per references/analysis-framework.md):

    • Save input as source.md (backup existing as source-backup-YYYYMMDD-HHMMSS.md)
    • Detect language
    • Recommend style preset from content signals
    • Estimate slide count
    • Generate topic slug
  3. Check existing content (required) before confirmation:

    • If output directory exists, ask how to proceed:
      • Regenerate outline (keep images)
      • Regenerate images (keep outline)
      • Backup and regenerate all ({slug}-backup-{timestamp})
      • Exit
    • Save analysis.md with topic, audience, signals, recommended style, slide count, language.

Step 2: Confirmation (required)

  • Two rounds:

    • Round 1: always
    • Round 2: only if “Custom dimensions” is selected
  • Round 1 questions (AskUserQuestion):

    1. Style (recommended preset / alternative / custom dimensions)
    2. Audience (general/beginners/experts/executives)
    3. Slide count (recommended / fewer / more)
    4. Review outline? (yes/no)
    5. Review prompts? (yes/no)
  • Round 2 (custom dimensions): AskUserQuestion for texture, mood, typography, density.

After confirmation:

  • Write results back to analysis.md
  • Record skip_outline_review and skip_prompt_review

Step 3: Generate outline

  • If preset: read references/styles/{preset}.md
  • If custom: combine from references/dimensions/
  • Follow references/outline-template.md
  • Save as outline.md
  • Stop if --outline-only
  • If skip_outline_review → skip to Step 5, else Step 4

Step 4: Review outline (conditional)

  • Show slide summary table (title/type/layout)
  • Ask whether to proceed, edit outline.md, or regenerate outline

Step 5: Generate prompts

  • Base prompt: references/base-prompt.md
  • For each slide:
    • Extract style instructions from outline
    • Merge layout guidance from references/layouts.md when specified
  • Save to prompts/
    • Backup existing prompt files as prompts/NN-slide-{slug}-backup-YYYYMMDD-HHMMSS.md
  • Stop if --prompts-only
  • If skip_prompt_review → skip to Step 7, else Step 6

Step 6: Review prompts (conditional)

  • Show prompt list table and prompts/ path
  • Ask whether to proceed, edit prompts, or regenerate prompts

Step 7: Generate SVG images

  • If --images-only, start here
  • If --regenerate, render only specified pages
  • Render via scripts/generate_svg.py
  • Create session id: slides-{topic-slug}-{timestamp}
  • Backup existing images as NN-slide-{slug}-backup-YYYYMMDD-HHMMSS.svg
  • Progress reporting: Generated X/N (in user language)
  • Retry once on failure, then report error

Step 8: Output summary

Include:

  • Topic
  • Style (preset or custom dimensions)
  • Total slides
  • List of generated SVG filenames
  • outline.md location
Repository
aipoch/medical-research-skills
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.