Offline documentation bundle¶
Why this exists¶
Air-gapped appliances cannot load docs.residion.io. Residion docs are therefore built once as plain static HTML with:
- Local CSS/JS/fonts — no CDN at runtime
- Client-side search — the search index ships in the bundle
- Optional service worker from Material’s offline plugin for browser caching when permitted
Build (documentation maintainers)¶
From the residion-docs repository:
python -m venv .venv
# Windows: .venv\Scripts\activate
# Unix: source .venv/bin/activate
pip install -r requirements.txt
make offline
make offline runs a production MkDocs build and packages site/ into dist/residion-docs-offline.zip.
On Windows without make:
Install on the appliance¶
- Transfer
residion-docs-offline.zipinto the air-gapped environment (USB / approved media). - Extract where the Operator Console (or local static server) is configured to serve docs.
- Open the docs URL on the LAN or loopback as configured for your appliance.
- Run a search query (for example
auditor) and confirm results appear with the network disabled.
Exact Operator Console mount path is appliance-specific — coordinate with Residion if the extract location is not already provisioned.
How to verify (air-gap)¶
- Disconnect the client from external networks (or use a host with no route).
- Load the extracted
index.htmlvia the local static server (do not rely onfile://for search). - Confirm styles render (monochrome shell, no missing font/CSS).
- Confirm search returns hits from the local index.
If it fails¶
| Symptom | Action |
|---|---|
| Broken layout / missing CSS | Confirm the whole site/ tree was extracted, not only index.html |
| Search empty | Serve over HTTP(S) from the console or a local static server; ensure search/search_index.json is present |
| Browser tries to reach Google Fonts / CDN | Should not happen in this build — report as a docs defect |