- Edit source files under
site/; do not edit generated files undersitegen/. - Start hpp's watcher before making site changes with
hpp/.venv/bin/python hpp/hpp.py --in-dir theme/site --in-dir site --listen --kqueue --port 8000; it regeneratessitegen/and serves the site athttp://127.0.0.1:8000. - Always use the Python virtualenv in
hpp/.venvfor hpp commands. - Keep the watcher running while editing and after handoff. Do not stop the watcher unless the user explicitly asks you to stop it.
- Do not manually rerun hpp after every source change, and do not start a separate
python3 -m http.serverfor this site. - If hpp dependencies are missing in the active Python environment, install them from
hpp/requirements.txtbefore starting the watcher. - After each source change, wait for the watcher to finish processing the affected files before reviewing or taking screenshots. Confirm the generated
sitegen/file reflects the edit, or wait for the watcher output showing the relevant file was written. - Visually inspect affected pages through the watcher server at desktop and mobile widths before handoff.
- When taking webpage screenshots, use
scripts/screenshot-codex.shand save files under.codex-screenshots/. - Put local Playwright/inspector scenario JSON files under
.codex-scenarios/; the folder is gitignored so these reusable automation inputs can be edited with normal workspace patches without being committed.
- This site must render and function without JavaScript.
- Do not introduce JavaScript, JavaScript dependencies, client-side frameworks, inline event handlers, or runtime-loaded assets that require JavaScript.
- Preserve the same visual result in a JavaScript-disabled browser.