Help us improve
Share bugs, ideas, or general feedback.
From openai-office-skills
Create and edit presentation slide decks (`.pptx`) with PptxGenJS, bundled layout helpers, and render/validation utilities. Use when tasks involve building a new PowerPoint deck, recreating slides from screenshots/PDFs/reference decks, modifying slide content while preserving editable output, adding charts/diagrams/visuals, or diagnosing layout issues such as overflow, overlaps, and font substitution.
npx claudepluginhub ruslands/plugins --plugin openai-office-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/openai-office-skills:slidesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use PptxGenJS for slide authoring. Do not use `python-pptx` for deck generation unless the task is inspection-only; keep editable output in JavaScript and deliver both the `.pptx` and the source `.js`.
LICENSE.txtassets/pptxgenjs_helpers/code.jsassets/pptxgenjs_helpers/image.jsassets/pptxgenjs_helpers/index.jsassets/pptxgenjs_helpers/latex.jsassets/pptxgenjs_helpers/layout.jsassets/pptxgenjs_helpers/layout_builders.jsassets/pptxgenjs_helpers/svg.jsassets/pptxgenjs_helpers/text.jsassets/pptxgenjs_helpers/util.jsreferences/pptxgenjs-helpers.mdscripts/create_montage.pyscripts/detect_font.pyscripts/ensure_raster_image.pyscripts/render_slides.pyscripts/slides_test.pyProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Explores codebases via GitNexus: discover repos, query execution flows, trace processes, inspect symbol callers/callees, and review architecture.
Share bugs, ideas, or general feedback.
Use PptxGenJS for slide authoring. Do not use python-pptx for deck generation unless the task is inspection-only; keep editable output in JavaScript and deliver both the .pptx and the source .js.
Keep work in a task-local directory. Only copy final artifacts to the requested destination after rendering and validation pass.
assets/pptxgenjs_helpers/: Copy this folder into the deck workspace and import it locally instead of reimplementing helper logic.scripts/render_slides.py: Rasterize a .pptx or .pdf to per-slide PNGs.scripts/slides_test.py: Detect content that overflows the slide canvas.scripts/create_montage.py: Build a contact-sheet style montage of rendered slides.scripts/detect_font.py: Report missing or substituted fonts as LibreOffice resolves them.scripts/ensure_raster_image.py: Convert SVG/EMF/HEIC/PDF-like assets into PNGs for quick inspection.references/pptxgenjs-helpers.md: Load only when you need API details or dependency notes.LAYOUT_WIDE) unless the source material clearly uses another aspect ratio.assets/pptxgenjs_helpers/ into the working directory and import the helpers from there.render_slides.py, review the PNGs, and fix layout issues before delivery.slides_test.py for overflow checks when slide edges are tight or the deck is dense..pptx, the authoring .js, and any generated assets that are required to rebuild the deck.autoFontSize, calcTextBox, and related helpers to size text boxes; do not use PptxGenJS fit or autoFit.• characters.imageSizingCrop or imageSizingContain instead of PptxGenJS built-in image sizing.latexToSvgDataUri() for equations and codeToRuns() for syntax-highlighted code blocks.warnIfSlideHasOverlaps(slide, pptx) and warnIfSlideElementsOutOfBounds(slide, pptx) in the submitted JavaScript whenever you generate or substantially edit slides.ensure_raster_image.py to generate debug PNGs from vector or odd image formats before placing them.Examples below assume you copied the needed scripts into the working directory. If not, invoke the same script paths relative to this skill folder.
# Render slides to PNGs for review
python3 scripts/render_slides.py deck.pptx --output_dir rendered
# Build a montage for quick scanning
python3 scripts/create_montage.py --input_dir rendered --output_file montage.png
# Check for overflow beyond the original slide canvas
python3 scripts/slides_test.py deck.pptx
# Detect missing or substituted fonts
python3 scripts/detect_font.py deck.pptx --json
Load references/pptxgenjs-helpers.md if you need the helper API summary or dependency details.