juanmarchetto/agent-skills/pdf-presentation
- community
Checking that the SKILL.md file is still in the repository.
Generate professional PDF reports and presentations from structured content. Converts evaluations, proposals, and assessments into polished PDFs with tables, score visualizations, and styled sections. Use when: generate PDF, create report, export to PDF, make presentation, create proposal document, export evaluation.
Install
npx vskill@latest install juanmarchetto/agent-skills/pdf-presentationSKILL.md
PDF Presentation Skill
Generate professional PDF reports from structured content using WeasyPrint.
When This Skill Activates
Trigger phrases: "generate PDF", "create report", "export to PDF", "make presentation", "create proposal document", "export evaluation", "PDF report".
Workflow
Step 1: Analyze Content
Identify what type of content needs to be exported:
- Architect Evaluation: Look for Value Matrix, Opportunity Score (1-10), sub-scores, risk assessment, recommendations. Structure as a full evaluation report with title page.
- General Report/Proposal: Any structured document with sections, headings, and body text. Structure with a cover page and sectioned layout.
- Comparison Table: Side-by-side analysis of options. Structure with prominent tables.
- Scored Assessment: Any content with numerical ratings or grades. Include SVG score visualizations.
Step 2: Build the HTML Document
Create a complete HTML file with inline CSS. Use the template structure from assets/templates/report.html as reference. The HTML must be self-contained (no external stylesheets, no external images).
Structure
CSS Guidelines
- Use the professional color palette from the template:
#1a365d(primary navy),#2b6cb0(accent blue),#e2e8f0(light gray),#f7fafc(background) - Set
@pagerules with 20mm margins, running headers/footers - Use
page-break-before: alwaysfor major sections - Typography: system font stack, 11pt body, 1.6 line-height
- Tables: alternating row colors, proper padding, header styling
SVG Score Visualizations
For numerical scores (1-10 scale), generate inline SVG elements:
Horizontal bar chart for sub-scores:
The filled width = (score / max_score) * total_width.
Gauge circle for overall scores:
The stroke-dashoffset = circumference - (score / max_score) * circumference. Circumference for r=50 is ~314.
Color coding for scores:
- 8-10:
#38a169(green) - 5-7:
#d69e2e(amber) - 1-4:
#e53e3e(red)
Architect Evaluation Specifics
When exporting Architect evaluation results, include these sections:
- Cover Page: Idea/project name, evaluation date, mode (New Idea / Existing Project)
- Executive Summary: 2-3 sentence overview with Go/No-Go recommendation
- Opportunity Score: Large gauge SVG with overall score, then bar chart for all 6 sub-scores
- Value Matrix: 3-column table (Commercial / Educational / Social) with scores and notes
- Evaluator Reports: One section per evaluator with their findings
- Risk Assessment: Risk matrix table with severity/likelihood
- Recommendations: Prioritized action items
- Next Steps: Concrete actionable items with timeframes
Step 3: Write the HTML File
Save the generated HTML to a temporary file. Use a descriptive filename:
- For evaluations:
evaluation-<slug>.html - For reports:
report-<slug>.html - For proposals:
proposal-<slug>.html
Place it in the current working directory or a specified output directory.
Step 4: Generate the PDF
Run the generation script:
Where <skill_directory> is the directory containing this SKILL.md file.
If the user specified an output path, use that. Otherwise default to the current working directory with a descriptive filename like report-<slug>.pdf.
Step 5: Report Results
Tell the user:
- The output PDF path (absolute)
- Page count if available
- Any warnings about content that could not be rendered
Supported Content Types
| Content Type | Key Elements | Template Sections Used | |
|---|---|---|---|
| Architect Evaluation | Value Matrix, Opportunity Score, Risk Assessment | Cover, Summary, Scores, Matrix, Evaluators, Risk, Recommendations | |
| Project Proposal | Problem, Solution, Timeline, Budget | Cover, Summary, Sections, Tables, Recommendations | |
| Comparison Analysis | Options, Criteria, Scores | Cover, Summary, Comparison Tables, Scores | |
| General Report | Sections, Findings, Conclusions | Cover, Summary, Sections, Recommendations | |
| Meeting Notes | Agenda, Decisions, Action Items | Cover, Sections, Action Items |
Requirements
- Python 3.8+
- WeasyPrint (
pip install weasyprint) - No other Python dependencies required
Tips for Best Results
- Provide structured content with clear headings and sections
- Include numerical scores when possible for visual impact
- Specify a title if you want a custom cover page heading
- For Architect evaluations, the skill auto-detects the format from standard output
Example Output
The PDF includes: professional cover page with title and date, table of contents, color-coded score tables, SVG bar charts for sub-scores, risk assessment with severity indicators, and numbered recommendations.
Fallback Without WeasyPrint
If WeasyPrint is not installed, the skill generates a standalone HTML file instead. This HTML file:
- Can be opened in any browser
- Can be printed to PDF via Ctrl+P / Cmd+P
- Contains all the same styling and visualizations
- Is a valid intermediate output, not a degraded experience
Error Handling
- WeasyPrint not installed: Fall back to HTML output (see above). Suggest
pip install weasyprintfor full PDF support. - Missing fonts: WeasyPrint uses system fonts. If text renders incorrectly, specify a font family in the CSS or install the needed font.
- SVG not rendering: Ensure SVG elements use inline styles, not CSS classes. WeasyPrint has limited CSS support for SVG.
- Large content overflows page: The template uses CSS
page-break-inside: avoidfor tables and score blocks. If content still overflows, it splits across pages gracefully.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/pdf-presentation/SKILL.md
Popularity
- Repository stars
- 5
- Repository forks
- 1
- 7-day trend score
- 9
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/juanmarchetto/agent-skills/pdf-presentation)