posterskill-academic-posters

posterskill-academic-posters — an installable skill for AI agents.

By reason-machines · 1,381 installs

npx skills add reason-machines/trending-skills --skill posterskill-academic-posters

Source repository · Upstream listing

posterskill — Academic Poster Generator Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection. posterskill is a Claude Code skill that generates print ready, interactive conference posters from your Overleaf paper source. It produces a single self contained HTML file with a built in drag and drop visual editor — no build step, no server required. Installation & Setup Start Claude Code and trigger the skill: Claude will ask for your project website URL and any formatting specs, then generate a poster/ directory with index.html . Directory Structure What Gets Generated The output poster/index.html is a React app (loaded via CDN) containing: CARD REGISTRY — each card's title, color, and JSX body content DEFAULT LAYOUT — column structure and card ordering DEFAULT LOGOS — institutional logos for the header window.posterAPI — programmatic API for layout automation Visual Editor Features Open poster/index.html in Chrome to access the built in editor: Feature How to Use Resize columns Drag column dividers left/right Resize cards Drag row dividers up/down within a column Swap cards Click one diamond handle, then another Move/insert cards Click a handle, then click a drop zone Adjust font size Click A / A+ buttons in toolbar Preview print layout Click Preview button Export layout Click Copy Config to get JSON Programmatic API ( window.posterAPI ) Available in the browser console or via Playwright automation: Iteration Workflow The core loop for refining your poster: 1. Claude generates first draft, opens poster/index.html in your browser 2. You edit in the browser — drag dividers, swap cards, resize columns 3. Click "Copy Config" in the toolbar to export your layout as JSON 4. Paste the JSON back to Claude — it updates DEFAULT LAYOUT in the HTML 5. Repeat until the layout is perfect 6. Print to PDF : File → Print → Margins: None, Background Graphics: On Playwright Automation (used internally by Claude) Claude uses Playwright to automate layout verification. You can use it too: Card Registry Structure Each card in the poster is defined in CARD REGISTRY : Default Layout Structure Inputs Claude Uses Input Where It Comes From Required : Paper content overleaf/ directory Yes Project website URL (asked at runtime) Yes Reference posters references/ .pdf No Author website URL for brand matching No Formatting specs Conference URL or text Asked if missing Logos Auto downloaded to poster/logos/ Auto Common Patterns Adding a custom figure card Then add it to DEFAULT LAYOUT : Logos configuration Printing to PDF In Chrome: 1. Open poster/index.html 2. Click Preview to verify layout 3. Ctrl+P / Cmd+P 4. Set Margins: None 5. Enable Background graphics 6. Set paper size to your conference spec (A0, 36×48in, etc.) 7. Save as PDF Troubleshooting Poster looks different in print vs browser → Use Chrome (not Firefox/Safari). Enable "Background graphics" in print dialog. Figures not loading → Ensure figure paths in the HTML are relative to poster/index.html . Claude copies figures to poster/figures/ — verify the directory exists. Logos not fetched → Claude uses Playwright to download logos from your project website. If it fails, manually copy logo files to poster/logos/ and update DEFAULT LOGOS paths. Layout config not updating after paste → Make sure you paste the full JSON from Copy Config — Claude looks for the complete DEFAULT LAYOUT and DEFAULT LOGOS objects to replace. Font too small/large for poster size → Use posterAPI.setFontScale(1.2) in the browser console, or click A+ / A buttons, then Copy Config and paste to Claude. Whitespace gaps between cards → Run posterAPI.getWaste() in console to quantify. Use posterAPI.setCardHeight('cardId', heightMm) to tune card heights, or drag row dividers manually. Example Output See the [Fillerbuster poster](http://ethanweber.me/fillerbuster poster) ([repo](https://github.com/ethanweber/fillerbuster poster)) as a live example of posterskill output.