omni-pca-docs/README.md
Ryan Malloy 0e6f75d2f7 Domain: hai-omni-pro-ii.l.warehack.ing (local subdomain pattern)
The .l.warehack.ing subdomain is the convention for the user's local
services. DNS for hai-omni-pro-ii.l.warehack.ing already resolves to
the host; caddy-docker-proxy picks up the new caddy label and routes
appropriately.

Patched .env, .env.example, docker-compose.yml, README.md,
astro.config.mjs.

Container rebuilt and restarted; verified caddy-docker-proxy is
serving 200 OK with 33051 bytes of rendered HTML on the internal
network, and the host-level Caddy issues a 308 redirect to https://
on the new hostname.
2026-05-10 17:06:35 -06:00

55 lines
1.4 KiB
Markdown

# hai-omni-docs
Documentation site for [`omni-pca`](https://github.com/rsp2k/omni-pca) — a
reverse-engineered Python library and Home Assistant integration for HAI/Leviton
Omni Pro II home automation panels. Built with Astro + Starlight, organised
around the Diátaxis framework.
Live: <https://hai-omni-pro-ii.l.warehack.ing>
## Local development
```sh
make install # one-time
make dev # http://localhost:4321 with hot reload
```
## Production build (smoke test)
```sh
make ci # runs `npm run build`, output in ./dist
```
## Deploy via Caddy
The container ships its static `dist/` from an inner Caddy on `:80`; the host's
`caddy-docker-proxy` terminates TLS and routes the configured `DOMAIN` to it via
the external `caddy` network.
```sh
cp .env.example .env # adjust COMPOSE_PROJECT / DOMAIN as needed
make build
make up # then tails logs
```
## Layout
```
src/
content/docs/
index.mdx
start/ # Overview + Quick start
tutorials/ # Diátaxis: learning-oriented
how-to/ # Diátaxis: task-oriented
reference/ # Diátaxis: information-oriented (protocol, file format, API)
explanation/ # Diátaxis: understanding-oriented (quirks, architecture, bugs)
journey.md # Chronological retrospective
changelog.md
styles/theme.css # Slate-blue + amber accent
assets/logo.svg
```
## Source project
- Library + integration: <https://github.com/rsp2k/omni-pca>