Skip to main content
ClaudeWave
Skill2.3k estrellas del repoactualizado 24d ago

poster-presentation

This Claude Code skill generates professional scientific conference posters as editable PowerPoint files using python-pptx, supporting standard sizes like A0 and A1 in multiple orientations. Use it when preparing posters for academic conferences, symposiums, or workshops, converting research papers into poster format, or creating templates that colleagues can edit in PowerPoint or similar applications.

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/K-Dense-AI/claude-scientific-writer /tmp/poster-presentation && cp -r /tmp/poster-presentation/skills/poster-presentation ~/.claude/skills/poster-presentation
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

SKILL.md

# Scientific Conference Poster — PowerPoint (.pptx)

## Overview

This skill creates professional scientific conference posters as editable PowerPoint (.pptx) files using `python-pptx`. It supports standard conference poster sizes (A0, A1), landscape and portrait orientations, structured academic sections, figure insertion with captions, and publication-quality academic color schemes.

The generated `.pptx` is fully editable, allowing researchers to fine-tune layout, fonts, and colors using Microsoft PowerPoint, LibreOffice Impress, or any compatible application. PDF export is available via LibreOffice or PowerPoint.

---

## When to Use This Skill

Use this skill when:
- Creating a poster for an academic conference, symposium, or workshop
- Converting a research paper or manuscript into poster format
- Building a poster template for a research group or institution
- Presenting preliminary results, thesis work, or funded project outcomes
- Needing an editable (non-PDF) poster that collaborators can update

**Trigger phrases:**
- "Create a conference poster as a PowerPoint / .pptx"
- "Make me a scientific poster I can edit in PowerPoint"
- "Generate a poster for my paper / conference / symposium"
- "Build an A0 / A1 poster for [conference name]"
- "Create a research poster with sections for methods, results, conclusions"

---

## Prerequisites

Install required Python packages before running any poster generation code:

```bash
pip install python-pptx Pillow
```

For PDF export from the command line:

```bash
# macOS (via Homebrew)
brew install --cask libreoffice

# Ubuntu / Debian
sudo apt-get install libreoffice

# Windows — download from https://www.libreoffice.org/
```

---

## Standard Poster Dimensions

| Format   | Orientation | Width (cm) | Height (cm) | Width (in) | Height (in) | Common use          |
|----------|-------------|------------|-------------|------------|-------------|---------------------|
| A0       | Portrait    | 84.1       | 118.9       | 33.11      | 46.81       | European conferences|
| A0       | Landscape   | 118.9      | 84.1        | 46.81      | 33.11       | US / mixed format   |
| A1       | Portrait    | 59.4       | 84.1        | 23.39      | 33.11       | Smaller venues      |
| A1       | Landscape   | 84.1       | 59.4        | 33.11      | 23.39       | Departmental events |
| 36×48 in | Portrait    | 91.44      | 121.92      | 36.0       | 48.0        | US conferences      |
| 48×36 in | Landscape   | 121.92     | 91.44       | 48.0       | 36.0        | US conferences      |

**python-pptx uses EMUs (English Metric Units): 1 inch = 914400 EMU, 1 cm = 360000 EMU**

---

## Workflow Phases

### Phase 1: Gather Content

Collect all poster content from the user or source document:

1. **Title** — full paper/poster title
2. **Authors** — list with superscript affiliation numbers
3. **Affiliations** — institution names linked to authors
4. **Contact / corresponding author** email
5. **Abstract** — 150–250 words
6. **Introduction / Background** — key context and motivation (3–5 bullet points or short paragraphs)
7. **Methods** — concise description with optional workflow figure
8. **Results** — key findings, data visualizations, tables
9. **Conclusions** — 4–6 bullet points
10. **Acknowledgements** — funding sources, collaborators
11. **References** — 5–10 key references (abbreviated format)
12. **Figures** — file paths to images/plots to embed
13. **Logo(s)** — institutional/conference logo paths
14. **Color scheme** — preferred colors or institution palette (see schemes below)

### Phase 2: Plan Layout

Standard two- or three-column academic poster layout:

```
┌──────────────────────────────────────────────────────────┐
│  LOGO  │           TITLE / AUTHORS / AFFILIATIONS         │  LOGO │
├─────────────────┬────────────────┬────────────────────────┤
│  Introduction   │   Methods      │   Results              │
│                 │                │                        │
│  Background     │   Workflow     │   Figure 1             │
│                 │   Figure       │                        │
├─────────────────┴────────────────┤   Figure 2             │
│  [Optional middle spanning row]  │                        │
├─────────────────┬────────────────┼────────────────────────┤
│  Conclusions    │ Acknowledgements│  References            │
└─────────────────┴────────────────┴────────────────────────┘
```

### Phase 3: Generate .pptx

Use the code templates below to build the poster programmatically.

### Phase 4: Export

- Save as `.pptx` (primary deliverable — fully editable)
- Export to PDF via LibreOffice or PowerPoint (see export section)
- Verify layout at 100% zoom before delivering

---

## Core Code: Poster Foundation

```python
"""
scientific_poster.py — Generate A0 landscape conference poster as .pptx
Requires: python-pptx, Pillow
"""

from pptx import Presentation
from pptx.util import Inches, Pt, Emu, Cm
from pptx.dml.color import RGBColor
from pptx.enum.text import PP_ALIGN
from pptx.util import Inches, Pt
import os


# ── Dimensions ────────────────────────────────────────────────────────────────
# A0 Landscape: 118.9 cm × 84.1 cm
POSTER_WIDTH_CM  = 118.9
POSTER_HEIGHT_CM = 84.1

def cm(value):
    """Convert centimetres to EMUs."""
    return Cm(value)


def create_poster(output_path: str = "poster.pptx") -> Presentation:
    """Create and return a blank poster Presentation at A0 landscape size."""
    prs = Presentation()
    prs.slide_width  = cm(POSTER_WIDTH_CM)
    prs.slide_height = cm(POSTER_HEIGHT_CM)

    # Remove all default placeholder layouts — use blank slide
    slide_layout = prs.slide_layouts[6]  # index 6 = blank
    slide = prs.slides.add_slide(slide_layout)

    return prs, slide
```

---

## Academic Color Schemes

```python
# ── Color Palettes ────────────────────────────────────────────────────────────

SCHEMES = {
    "classic_blue": {
        "header_bg":    RGBColor(0x1A, 0x3A, 0x5C),   # dark navy
        "header
citation-managementSkill

Comprehensive citation management for academic research. Search Google Scholar and PubMed for papers, extract accurate metadata, validate citations, and generate properly formatted BibTeX entries. This skill should be used when you need to find papers, verify citation information, convert DOIs to BibTeX, or ensure reference accuracy in scientific writing.

clinical-decision-supportSkill

Prepare and validate research-only clinical decision-support evaluation, evidence-profile, cohort, survival, biomarker/model, privacy, and governance artifacts. Use for aggregate or synthetic research documentation and traceability—not patient care or live clinical operation.

clinical-reportsSkill

Create safety-bounded draft structures and run local deterministic checks for clinical case, diagnostic, trial, safety, and aggregate research reports. Use only with synthetic, de-identified, or aggregate inputs and verified source-fact manifests; every output requires qualified review.

docxSkill

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files) or Word templates (.dotx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', '.dotx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx or .dotx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.

pdfSkill

Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.

pptxSkill

Use this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates (.potx), layouts, speaker notes, or comments. Trigger whenever the user mentions \"deck,\" \"slides,\" \"presentation,\" or references a .pptx or .potx filename, regardless of what they plan to do with the content afterward. If a .pptx or .potx file needs to be opened, created, or touched, use this skill.

xlsxSkill

Create, edit, analyze, or convert Excel spreadsheets (.xlsx, .xlsm, .xltx) where the workbook file is the primary deliverable. Use for formulas, formatting, financial models, multi-sheet workbooks, and tabular cleanup exported to Excel. Also applies to .csv/.tsv when the user wants spreadsheet output. Do NOT use for Word documents, HTML reports, standalone Python scripts, database pipelines, or Google Sheets API work.

generate-imageSkill

Generate or edit images with AI models through the OpenRouter Image API (Gemini, FLUX, Seedream, Recraft, GPT-Image). Use for photos, illustrations, artwork, concept art, visual assets, logos, and image editing or compositing from reference images. For flowcharts, circuits, pathways, and other technical diagrams, use the scientific-schematics skill instead.