mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-09 13:01:00 +00:00
docs: document the NEXT_PUBLIC_DASHBOARD_SNAPSHOT build-time toggle
It is a build-time NEXT_PUBLIC_* var (inlined into the client bundle), default ON, disabled only by rebuilding with the var set to false. Note the build-time nature in .env.production.example and getting-started, and keep it out of the compose runtime whitelist where it would mislead operators.
This commit is contained in:
1 parent
d1e3c9a792
commit
44e83d22df
2 files changed
+38
No files matched your search
@@ -60,3 +60,21 @@ API_TOKEN_HMAC_KEY="<openssl rand -hex 32>"
|
||||
# BACKUP_S3_ACCESS_KEY=""
|
||||
# BACKUP_S3_SECRET_KEY=""
|
||||
# BACKUP_ENCRYPTION_KEY=""
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Dashboard snapshot -- BUILD-TIME toggle (default ON)
|
||||
# -----------------------------------------------------------------------------
|
||||
# The dashboard hydrates every above-the-fold tile from the single
|
||||
# `GET /api/dashboard/snapshot` cell so the whole strip shares one
|
||||
# completion moment. This is the default and the desired behaviour.
|
||||
#
|
||||
# `NEXT_PUBLIC_*` vars are inlined into the client bundle at BUILD time,
|
||||
# not read at runtime -- so this has NO effect on the prebuilt GHCR
|
||||
# image and is intentionally absent from the `docker-compose.yml`
|
||||
# runtime `environment:` whitelist. To fall back to the legacy
|
||||
# four-cell path you must rebuild the image with the var set to "false":
|
||||
#
|
||||
# $ NEXT_PUBLIC_DASHBOARD_SNAPSHOT=false pnpm build # or a Dockerfile ARG
|
||||
#
|
||||
# NEXT_PUBLIC_DASHBOARD_SNAPSHOT="false"
|
||||
@@ -122,6 +122,26 @@ bare Nginx — including the `X-Forwarded-For` chain shape that the
|
||||
rate-limiter trusts and the `TRUST_PROXY_HOPS` env var that pins how
|
||||
many hops to read back.
|
||||
|
||||
## Build-time feature toggles
|
||||
|
||||
A small number of toggles are `NEXT_PUBLIC_*` variables: the framework
|
||||
inlines them into the client bundle at **build time**, so the pre-built
|
||||
GHCR image cannot read them at runtime. Setting them in `.env` or the
|
||||
compose `environment:` block has no effect — they only take hold when
|
||||
you build your own image. They are intentionally absent from the
|
||||
compose runtime whitelist for that reason.
|
||||
|
||||
| Variable | Default | Effect when set |
|
||||
| --- | --- | --- |
|
||||
| `NEXT_PUBLIC_DASHBOARD_SNAPSHOT` | on | The dashboard hydrates every above-the-fold tile from the single `GET /api/dashboard/snapshot` cell so the whole strip shares one completion moment. Build with `NEXT_PUBLIC_DASHBOARD_SNAPSHOT=false` to fall back to the legacy four-cell path. |
|
||||
|
||||
To flip one, rebuild the image with the variable exported:
|
||||
|
||||
```bash
|
||||
NEXT_PUBLIC_DASHBOARD_SNAPSHOT=false pnpm build
|
||||
# or pass it as a Dockerfile build ARG / Docker build --build-arg
|
||||
```
|
||||
|
||||
## 7. Where to go next
|
||||
|
||||
| Next step | File |
|
||||
|
||||
Reference in new issue
Block a user