Loading...
Loading...
Publisher role. Exports deck to PDF or PPTX with post-export QA. Use whenever the user says "export", "to PDF", "to PPTX", "PowerPoint", "print", "download", "save as PDF", "convert", or wants to convert a finished deck to PDF or PPTX.
npx skill4agent add hiyeshu/codeck codeck-exportDECK_DIR="$HOME/.codeck/projects/$(basename "$(pwd)")"
mkdir -p "$DECK_DIR"
bash "$HOME/.claude/skills/codeck/scripts/status.sh" "$DECK_DIR"./*-r*.html/codeck-design./*-r*.htmlnpx playwright install chromium 2>/dev/null || trueimport { chromium } from 'playwright';
import { resolve } from 'path';
import { readdirSync } from 'fs';
import { pathToFileURL } from 'url';
const html = readdirSync('.').find(f => /-r\d+\.html$/.test(f));
const baseName = html.replace('.html', '');
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto(pathToFileURL(resolve(html)).toString(), { waitUntil: 'networkidle' });
await page.emulateMedia({ media: 'screen' });
await page.pdf({
path: `${baseName}.pdf`,
printBackground: true,
preferCSSPageSize: true,
margin: { top: '12mm', right: '12mm', bottom: '12mm', left: '12mm' }
});
await browser.close();
console.log(`done: ${baseName}.pdf`);.media-posterslide.addMedia({ path: "..." })EXPORT_SCRIPTS="$HOME/.claude/skills/codeck-export/pptx/scripts"
python "$EXPORT_SCRIPTS/office/soffice.py" --headless --convert-to pdf ./*-r*.html
python "$EXPORT_SCRIPTS/office/soffice.py" --headless --convert-to pptx ./*-r*.htmlexport/pptx/pptxgenjs.mdEXPORT_SCRIPTS="$HOME/.claude/skills/codeck-export/pptx/scripts"
python "$EXPORT_SCRIPTS/thumbnail.py" ./*-r*.pptxpython "$EXPORT_SCRIPTS/office/soffice.py" --headless --convert-to pdf ./*-r*.pptx
pdftoppm -jpeg -r 150 *.pdf slide-checkExport done. Output:/{baseName}.pdf{baseName}.pptxNeed a speech script?. Otherwise you're done — run/codeck-speechanytime for an overview./codeck