Generates branded PPTX (PowerPoint) presentations using the MetodologIA Neo-Swiss Design System v6. Uses python-pptx to create slide decks with navy backgrounds, gold accents, Poppins titles, and Trebuchet MS body text. Use when the user requests a presentation, slide deck, PPTX output, or when the ghost menu routes to PPTX format.
From pmnpx claudepluginhub javimontano/mao-pm-apexThis skill is limited to using the following tools:
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Resolves freight exceptions including delays, damages, losses, and carrier disputes via classification workflows, escalation protocols, claims filing, and carrier-specific strategies.
Generates production-ready PowerPoint presentations following the MetodologIA Neo-Swiss Clean & Soft Explainer design system (v6). Every deck uses navy backgrounds, gold accents, Poppins typography, and professional slide layouts optimized for executive and technical audiences.
ALWAYS read the brand config first:
Read ${CLAUDE_SKILL_DIR}/../../references/brand-config-neoswiss.json
Extract the pptx section for all slide master specs, colors, fonts, and limits.
All values sourced from brand-config-neoswiss.json:
| Token | Value | Usage |
|---|---|---|
| Slide Master BG | #122562 (Navy) | Title slides, dividers, closing |
| Title Font | Poppins | All headings and slide titles |
| Title Size | 36pt | Slide titles |
| Title Color | #FFFFFF (White) | On navy backgrounds |
| Body Font | Trebuchet MS | All body text, bullets, notes |
| Body Size | 18pt | Standard body |
| Body Color | #F8F9FC (Off-white) | On navy backgrounds |
| Accent | #FFD700 (Gold) | KPI values, divider numbers, emphasis |
| Primary | #137DC5 (Blue) | Links, positive indicators |
| Content BG | #FFFFFF (White) | Content slides |
| Content Title | #122562 (Navy) | Titles on white backgrounds |
| Content Body | #1F2833 (Dark) | Body text on white backgrounds |
| Max Slides (Executive) | 20 | — |
| Max Slides (Technical) | 30 | — |
from pptx import Presentation
from pptx.util import Inches, Pt, Emu
from pptx.dml.color import RGBColor
from pptx.enum.text import PP_ALIGN
import json
# Load brand config
with open('references/brand-config-neoswiss.json') as f:
config = json.load(f)
pptx_config = config['pptx']
# Color constants
NAVY = RGBColor(0x12, 0x25, 0x62)
GOLD = RGBColor(0xFF, 0xD7, 0x00)
BLUE = RGBColor(0x13, 0x7D, 0xC5)
WHITE = RGBColor(0xFF, 0xFF, 0xFF)
OFF_WHITE = RGBColor(0xF8, 0xF9, 0xFC)
DARK = RGBColor(0x1F, 0x28, 0x33)
# Font constants
TITLE_FONT = 'Poppins'
BODY_FONT = 'Trebuchet MS'
NOTE_FONT = 'Century Gothic'
prs = Presentation()
prs.slide_width = Inches(13.333) # 16:9
prs.slide_height = Inches(7.5)
# Title slide
slide = prs.slides.add_slide(prs.slide_layouts[6]) # Blank
bg = slide.background
fill = bg.fill
fill.solid()
fill.fore_color.rgb = NAVY
# Add title
txBox = slide.shapes.add_textbox(Inches(1), Inches(2), Inches(11), Inches(2))
tf = txBox.text_frame
p = tf.paragraphs[0]
p.text = "Titulo del Deliverable"
p.font.name = TITLE_FONT
p.font.size = Pt(36)
p.font.color.rgb = WHITE
p.font.bold = True
p.alignment = PP_ALIGN.LEFT
# Save
prs.save('output.pptx')
Every PPTX follows this structure:
brand-config-neoswiss.json read before generationAutor: Javier Montano · Comunidad MetodologIA | Version: 1.0.0 Neo-Swiss