| .claude | ||
| appendix | ||
| bib | ||
| context | ||
| figures | ||
| ingest | ||
| macros | ||
| scratch | ||
| sections | ||
| venue | ||
| .gitignore | ||
| .latexmkrc | ||
| .mcp.json | ||
| CLAUDE.md | ||
| claudese.md | ||
| main.tex | ||
| Makefile | ||
| README.md | ||
| writing-style-guide.md | ||
Paper template
This repository is a template for an academic paper in LaTeX, written with Claude Code as an assistant. It compiles as it is and contains placeholder content.
Layout
main.tex uses the article class; a marked block at its top switches it to a venue class, whose files go in venue/. It loads the macros in macros/ and inputs the sections in sections/ and the proofs in appendix/. Every symbol of the paper is a macro in macros/notation.tex, listed with its meaning in context/notation.md. Figures are standalone TikZ files in figures/src/ that read their data from figures/data/, and the paper includes their compiled PDFs from figures/build/. The references are in bib/dblp.bib and bib/refs.bib, processed by biblatex with biber.
context/ contains the material Claude Code works from: the outline with the claims of the paper and the goal of each section, the notation table, and referee reviews, which Claude Code does not edit; and the related papers, which Claude Code downloads into context/related-papers/ as <year>-<first-author-surname>-<title-slug>.pdf, each with a .md file of notes. When a download is blocked, you save the file from Firefox into ingest/, and Claude Code moves it to context/related-papers/. scratch/ contains explorations, one dated folder each, indexed in scratch/README.md. .claude/ contains the permissions of Claude Code and the commands /review-section, /check-notation, /tighten-prose and /new-scratch. CLAUDE.md contains the rules Claude Code follows and imports two files: writing-style-guide.md, the style guide, and claudese.md, the list of banned words and phrases. .mcp.json registers the dblp MCP server.
Entries from dblp, through the dblp MCP server or dblp-cli bibtex <key>, go in bib/dblp.bib and may be added at any time. A reference not in dblp goes in bib/refs.bib, with the BibTeX doi.org returns for its DOI.
Building
make compiles the figures, then the paper with latexmk into build/make/, and copies the PDF to main.pdf. make figures compiles each figures/src/*.tex into figures/build/, and recompiles a figure when its source or a file in figures/data/ has changed. make watch runs latexmk in continuous mode into build/, the folder vimtex also uses through .latexmkrc; since make writes into build/make/, it can run while vimtex or make watch is compiling. make clean removes build/ and figures/build/. make arxiv writes build/arxiv.tar.gz with the sources, the compiled figures and the .bbl file, without context/, scratch/, ingest/, .claude/, CLAUDE.md, writing-style-guide.md, claudese.md and .mcp.json. make wordcount runs texcount over sections/ and appendix/.