About this template
Immersive Reader (Codex)
Fork this and you get a Codex agent that turns any long-form content into a bespoke, interactive reading site — not a summary, a space you explore.
Say /immersive-reading (or "turn this essay into a reading site") and point it at a URL, pasted text, a transcript, or a file. Codex will:
- Read the source and preserve author, title, and the original link.
- Structure it into guided chapters and sections with anchor quotes.
- Scaffold a static interactive reader — full-text search, highlights, notes you take as you think, optional bilingual side-by-side, and light/dark mode.
- Serve it locally so you can read it right away (or deploy it).
The generator is the open-source immersive-reading skill by @ranli_thinker (MIT). The author's own edition of Paul Graham's How to Do Great Work: http://ranli.me/read-paul-graham.
Viewing your reader — serve it, don't open the file from disk
The reader is a modern ES-module site (its app.js imports its content + animation). Browsers block ES modules over file://, so if you unzip it and double-click index.html you'll see a flat, unstyled shell — nothing immersive. That's a browser rule, not a broken site. Put it on an http:// origin instead:
- Fastest: inside the output folder, run
python3 -m http.server 8000, then openhttp://localhost:8000. - In the fork:
node ~/.codex/skills/immersive-reading/scripts/serve-reader.mjs <output-dir> --port 8791. - Ship it: deploy the folder to any static host (Vercel), like the author's
ranli.me/read-paul-graham.
BYOK setup
After forking, open the terminal and authenticate Codex with your own account:
codex login— ChatGPT Plus / Pro / Team / Enterprise, orexport OPENAI_API_KEY=sk-...
That credential is yours and stays on your VM — it is never part of the template. The skill needs no other API key. Then run codex, type /immersive-reading, and give it something long worth reading.
node is already on your PATH (a shim to the VM's baked runtime), so the site generator just works — no npm install, no setup.