Receber por email
← Voltar para o catálogo

canvas-present

Build presentation-mode canvases for the Advanced Canvas plugin. Creates slide-deck canvases with 1200x675 group nodes connected by edges for arrow-key navigation. Supports title slides, content slides with images, full-text slides, and optional script annotation columns for video planning. Triggers on: canvas present, create presentation, build slide deck, canvas slides, make a presentation, pres

114estrelas
Atualizado há 6 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add AgriciDaniel/claude-canvas

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/canvas-present/svg)](https://www.skillteca.com.br/skills/canvas-present)
#ai

Alerta por categoria

Receba novas skills de Design e Frontend toda segunda

1 email curto, só com as skills novas de Design e Frontend. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

canvas-present: Presentation Canvas Builder

Read ../canvas/references/presentation-spec.md for slide dimensions, navigation edges, layout patterns, and color coding. Read ../canvas/references/performance-guide.md for node limits.

Operations

Build Presentation (/canvas present [topic])

Create a complete presentation canvas from a topic description.

Workflow:

  1. Gather context: Ask the user for:
  2. Topic/title (required)
  3. Number of slides (default: 6, recommend 6-10)
  4. Style: deck (1200×675 clean) or storyboard (1920×1080 with script column)
  5. Whether to generate images for slides (requires /banana)
  1. Generate slide structure: Claude writes the content for each slide:
  2. Slide 1: Title slide (title, subtitle, date)
  3. Slide 2: Agenda/overview
  4. Slides 3-N-2: Content slides (key points, data, findings)
  5. Slide N-1: Key takeaway / summary
  6. Slide N: Next steps / closing
  1. Create the canvas:

a. Start from the presentation template: ``bash python3 scripts/canvas_template.py presentation [output_path] \ --param title="[topic]" --param slide_count=[N] ``

b. Edit each slide's text node with the generated content using the Edit tool.

c. If images requested: generate via /banana and add as file nodes inside slide groups.

d. If storyboard style: add script annotation text nodes (width=500) to the right of each slide group.

  1. Color-code slides per the spec:
  2. Title/close: "6" (purple)
  3. Content: "4" (green)
  4. Key insight: "5" (cyan)
  5. Action items: "2" (orange)
  1. Validate:

``bash python3 scripts/canvas_validate.py [output_path] ``

  1. Report: "Created [N]-slide presentation at [path]. Open in Obsidian with Advanced Canvas to navigate with arrow keys."

Build from Notes (/canvas present from [notes])

Create a presentation from existing markdown files or wiki pages.

Workflow:

  1. Find source notes: Search for the specified files. If in a claude-obsidian vault, use wiki/ paths. Otherwise search the current directory.
  1. Extract content: Read each note and extract:
  2. H1 headings → slide titles
  3. H2 headings → slide section markers
  4. Key paragraphs → slide body text
  5. Images/embeds → slide visuals
  6. Bullet lists → slide bullet points
  1. Map to slides: One H1 or H2 section per slide. If a section is too long (>200 words), split into multiple slides.
  1. Generate canvas: Follow the same build workflow as /canvas present [topic], using extracted content instead of Claude-generated content.
  1. Report: "Created presentation from [N] source notes → [M] slides."

Add Slide (/canvas present add slide [content])

Add a new slide to an existing presentation canvas.

Workflow:

  1. Read the existing presentation canvas.
  2. Find the last slide group (highest y for vertical stack, highest x for horizontal).
  3. Create a new slide group at the next position:
  4. Vertical: y = last_slide_y + last_slide_height + 100
  5. Horizontal: x = last_slide_x + last_slide_width + 100
  6. Add content text node inside the new slide group.
  7. Add edge from the previously-last slide to the new slide.
  8. Write and validate.

Slide Content Guidelines

Each slide should follow the "one idea per slide" principle:

  • Title: 3-8 words. Use H2 (##) for slide titles.
  • Body: 2-5 bullet points OR 1-2 short paragraphs. Max 100 words per slide.
  • Visual: One image or diagram per content slide. Place to the right of text.
  • Callouts: Use Obsidian callouts for emphasis:

``markdown > [!tip] Key Insight > The main takeaway in one sentence. ``

Mermaid in slides: Mermaid diagrams render natively in text nodes. Great for data slides:

## Revenue Growth

graph LR Q1["Q1: $1.2M"] --> Q2["Q2: $1.8M"] Q2 --> Q3["Q3: $2.4M"] Q3 --> Q4["Q4: $3.1M"]

Integration with Media Skills

When the user requests images for slides:

  1. banana: Generate hero images, backgrounds, illustrations.
  2. Prompt pattern: "[slide topic], presentation slide style, clean, professional"
  3. Add as file node inside the slide group (half-width, right-aligned)
  1. svg: Generate charts, diagrams, icons.
  2. Best for data visualization slides
  3. Add as file node with viewBox-based sizing
  1. Mermaid: Native in text nodes — no external skill needed.
  2. Best for flowcharts, sequence diagrams, gantt charts inside slides

If media skills are not installed, build text-only presentations and suggest: "Install /banana for AI-generated slide images."

Compartilhar X LinkedIn