paper2html
Convert an academic paper PDF into a publish-ready, self-contained single-page **project homepage** (a self-contained index.html) — the kind of paper landing page researchers host on GitHub Pages. Triggers when the user says "turn a paper into a project page/webpage", "paper2html", "generate a paper landing page / project page", "turn this PDF into an HTML page", "paper to webpage", or "make a paper homepage". A you-led, coordinated skill: the mechanical steps (MinerU parsing + deterministic fact extraction at gate 1 + post-authoring QA at gate 2) call scripts, while **you hand-author index.ht
npx skills add QuZhan51496/paper2anything --skill paper2html --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# paper2html — Paper to single-page project homepage (you-led, coordinated) Turn a paper PDF into a **self-contained, publish-ready single-page project website** — the kind of paper homepage researchers commonly build on GitHub Pages. **You are the lead author**: this file is the recipe, not a fully automated script — there is no `main.py`, no renderer. The mechanical steps (parse / extract / QA) call the small tools under `scripts/`; **understanding the paper, designing the page, and writing `index.html` are done by you** (read the material and figures with Read, write `index.html` with Write), confirming with the user at key points via `AskUserQuestion`. ```text PDF → parse + extract (parse_pdf.py: MinerU → clean.md + manifest.json + images/, gate 1) → you understand it + set the design (read manifest + clean.md + look at figures) → pick a design language [confirm design direction] → you hand-author the page (per the references/ design-language and authoring rules) → index.html [optional confirm] → QA validation (validate.py: missing figures/broken links/content fidelity, gate 2) → fix per report, loop → single-page project homepage index.html (+ images/, deployable as-is) ``` ##
- How you run this skill
- Step 0: Environment and credentials
- Step 1: Parse + deterministic extraction (script, gate 1)
- Step 2: Understand the paper + set the design direction (you do this) [confirm]
- Step 3: Hand-author index.html (you do this) [optional confirm]
- Step 4: QA validation and revision (script, gate 2)
- Step 5: Collect the deliverable next to the PDF
- Deliverable locations
- Troubleshooting
- references/
set -a; source <paper2anything package root>/.env; set +a
conda run -n paper2anything --no-capture-output python -c "import requests, rich, dotenv, playwright, PIL" 2>&1
render_check.py (Step 4 render self-check) needs the chromium engine; install it once before the first run:
conda run -n paper2anything --no-capture-output python -m playwright install chromium
conda run -n paper2anything --no-capture-output \
python "${SKILL_DIR}/scripts/parse_pdf.py" "$pdf_path" --workdir "$WORKDIR"
python "${SKILL_DIR}/scripts/validate.py" --workdir "$WORKDIR"
Desktop width + mobile width must both pass — mobile most easily exposes horizontal overflow / clipped wide tables / overflowing long formulas
python "${SKILL_DIR}/scripts/render_check.py" "$WORKDIR/index.html" 1200
python "${SKILL_DIR}/scripts/render_check.py" "$WORKDIR/index.html" 390What does the paper2html skill do?
Convert an academic paper PDF into a publish-ready, self-contained single-page **project homepage** (a self-contained index.html) — the kind of paper landing page researchers host on GitHub Pages. Triggers when the user says "turn a paper into a project page/webpage", "paper2html", "generate a paper landing page / project page", "turn this PDF into an HTML page", "paper to webpage", or "make a paper homepage". A you-led, coordinated skill: the mechanical steps (MinerU parsing + deterministic fact extraction at gate 1 + post-authoring QA at gate 2) call scripts, while **you hand-author index.ht
How do I install it?
Run `npx skills add QuZhan51496/paper2anything --skill paper2html --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From QuZhan51496/paper2anything, a repository with 333 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
