Install: npm install -g @daniyalsh/ipho — then run ipho anywhere.

Global options

OptionDescription
-d, --dir <path>Library directory (default: ./ipho-library)
-p, --port <n>Server port (default: 3847)

Commands

ipho

Default: download handouts, start server, open browser.

ipho download [target]

TargetDescription
handouts (default)Kevin Zhou PDFs from knzhou.github.io
iphoIPhO theory papers from phoXiv (2001+)
allBoth handouts and past papers

Options: -f, --force re-download; -y, --year (with ipho) single year.

ipho download all
ipho download ipho -y 2020 --force

ipho serve

Start the local study website without downloading.

ipho open

Download, serve, open browser. Flags: --ipho, --no-browser, -f.

ipho status

Show handouts and IPhO years on disk.

ipho xournal status · ipho xournal path <exe>

Xournal++ detection and configuration.

Environment variables

VariableDefaultPurpose
IPHO_DIR./ipho-libraryLibrary root
IPHO_PORT3847HTTP server port
IPHO_HANDOUTS_URLknzhou GitHub raw URLOverride handout PDF source