explaingit

chenruishuo/posterly

16PythonAudience · researcherComplexity · 2/5LicenseSetup · moderate

TLDR

A tool that creates academic conference posters using HTML and CSS instead of LaTeX, then converts them to print-ready PDFs at exact dimensions for venues like NeurIPS and ICML.

Mindmap

mindmap
  root((Posterly))
    What it does
      Builds poster as HTML/CSS
      Converts to PDF
      Validates layout
    Venues supported
      ICML
      NeurIPS
      ICLR
      CVPR
    Templates
      Four-column landscape
      Hero landscape
      Two-column portrait
    Tech stack
      Python
      Playwright
      MathJax
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Create a conference poster for NeurIPS, ICML, ICLR, or CVPR by filling in an HTML template and exporting a print-ready PDF.

USE CASE 2

Automatically check your poster layout for column overflows or sizing issues before submitting to a venue.

USE CASE 3

Use Posterly as an AI coding agent skill inside Claude Code to walk through the entire poster creation workflow.

Tech stack

PythonPlaywrightHTMLCSSMathJax

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Python 3.10+, Playwright, and system PDF utilities, MathJax loads from CDN by default but can be used offline with a local copy.

MIT license, use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

Posterly is a tool for creating academic conference posters. Instead of using LaTeX, which is the traditional approach in research, it builds posters as a single HTML and CSS file and then uses a headless web browser to convert that file into a print-ready PDF at exact dimensions for specific venues like ICML, NeurIPS, ICLR, and CVPR. The reasoning behind choosing HTML over LaTeX is mainly about the editing experience. Changing layout or styling in HTML and refreshing a browser takes seconds. Doing the same in LaTeX means recompiling, reading error logs, and reopening the PDF. Web layout tools like Flexbox and CSS Grid also offer more flexible positioning than LaTeX poster packages, and since the poster is a structured HTML document, automated checks can read the geometry programmatically to detect column overflow or other layout problems instead of relying on visual inspection. The project ships as a coding-agent skill, meaning it is designed to be invoked from within an AI coding tool like Claude Code or Codex. When you run the slash command inside your agent, it walks through the steps of picking a venue, selecting a template, filling in content, running sanity checks, and rendering the final PDF. It can also be used directly from the command line without an agent. Four command-line tools handle the quality checks: a preflight that validates the HTML structure, a measure tool that checks column and canvas sizing, a polish check for content quality, and a final verify step that inspects the rendered PDF dimensions against the venue spec. Three poster templates are included (four-column landscape, hero landscape, and two-column portrait), along with three real published conference posters as worked examples. Installation requires Python 3.10 or later, the Playwright library for browser control, and the system utilities for reading PDFs. Math in posters is handled by MathJax, which loads from a CDN by default but can be swapped to a local copy for offline use. The license is MIT.

Copy-paste prompts

Prompt 1
I need to create a poster for NeurIPS using Posterly. How do I pick a template, fill in my content, and render the final PDF? Show me the steps.
Prompt 2
How do I run Posterly's preflight and measure quality checks to detect column overflow or layout problems in my poster HTML?
Prompt 3
How do I use Posterly from the command line without an AI coding agent to generate a PDF poster for ICML?
Prompt 4
How do I swap MathJax from CDN to a local copy in Posterly so I can render math in my poster without an internet connection?
Open on GitHub → Explain another repo

← chenruishuo on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.