doxa-maps/.env.example
Doxa Maps c92e857e01 README and docs: a plugin's own page is /__leaf/<plugin>/<profile>, and auto is MapLibre
A fresh reader given only the README and HOWTO-join-the-table got through install, bun run dev and
the Studio. One gap: no address for a single plugin's page. The Capability 1 fold says each plugin's
folder holds "an index.html for previewing it", which reads as /plugin-designs/<plugin>/index.html,
and that 404s under bun run dev. The page is /__leaf/<plugin>/<profile>, and the Studio's list is
/__plugin-gallery/manifest.json. Both are now named.
Three smaller notes from the same reader:
- the README copied .env.example to .env while the HOWTO uses .env.local. Both work and .env.local
  wins; the README now uses .env.local too, which also keeps .env free for compose.yaml;
- the Mapbox token read as required; it is one of two ways to get a background;
- the 8090 port hint (DX_PB_PORT) was only in the HOWTO; it is now named where the README first
  mentions PocketBase.

Also, the engine rule (was a follow-up commit, f0e965e4d):
Since 2026-09-28 useMapProvider.js resolves `auto` to MapLibre, and Mapbox is an explicit choice:
"provider": "mapbox" plus a token. The docs still said "Mapbox when a token is available":
- README's map-engines row;
- how-to.md's provider section;
- the plugin-designer skill's props table, which even says to confirm in useMapProvider.js.
All three now state the current rule. So do four lines that told readers to set provider maplibre to
avoid needing a key: README's Get it running and its "No token" fold, .env.example's token comment,
and reference.md's no-key row.
Case-insensitive git grep "Mapbox when a token" over README.md, documentation/ and skills/: 3 before, 0 after.
2026-09-29 11:04:22 +00:00

42 lines
3.3 KiB
Text

# .env.example — every local setting, each shown with its DEFAULT.
# A fresh clone needs NONE of this: `bun run dev` works with no .env at all. To change something, copy
# this file to .env (or .env.local, which wins; both are gitignored) and edit only the lines you need.
# An empty value means "use the default".
# ── Maps ─────────────────────────────────────────────────────────────────────────────────────────
# A Mapbox public token (starts with pk.), used by maps that choose Mapbox ("provider": "mapbox", or
# ?provider=mapbox on a page). Empty is fine: maps draw with MapLibre by default, with no key.
# Production hosts pass the token through profile-config.tk; never bake it into a bundle.
VITE_MAPBOX_TOKEN=
# The data API the maps read when a plugin's profile does not name one (profile apiBaseUrl and a host
# page's window.MAP_APP_API_URL come first). This is the value the maps are built against.
VITE_API_BASE_URL=https://pray.doxa.life
# ── Hot reload from a shared branch (internal/dev-sync-plugin.mjs) ───────────────────────────────
# Empty = OFF: the dev server hot-reloads YOUR local edits only (the default).
# Set to a remote name (origin) or a repo URL (https://…/repo.git) and `bun run dev` fetches every few
# seconds and fast-forwards when this checkout is on that branch with no local edits or commits; otherwise
# it only reports "development is N commits ahead" (in the log and at /api/dev-sync). It never merges over your work.
# Following needs read access to the repo (a git credential helper, or an SSH remote); without it the log says so.
DX_SYNC_REMOTE=
# The branch to follow. Empty = development (the shared table; main is production).
DX_SYNC_BRANCH=
# Seconds between checks. Empty = 5 (minimum 2).
DX_SYNC_INTERVAL=
# ── PocketBase, the backend for plugins (internal/backend-dev-plugin.mjs) ────────────────────────
# Empty = a LOCAL PocketBase: `bun run dev` downloads the pinned binary once (checksum-verified) and
# serves it at /api/pb, admin UI /api/pb/_/, data in .pb/dev (gitignored). Nothing leaves this computer.
# Set to a PocketBase root (e.g. https://<your team's dev server>/pb) to use a shared team one instead.
DX_PB_URL=
# The local PocketBase's port. Empty = 8090 (change it only if the log says the port is in use).
DX_PB_PORT=
# ── Rudder, voice to text (backend/rudder-engine) ────────────────────────────────────────────────
# These are read from the SHELL ENVIRONMENT, not from this file (e.g. `RUDDER_PORT=6193 bun run dev`).
# Rudder runs when its engine is built: install Go 1.22+ and run `bash backend/rudder-engine/setup-runtime.sh`.
# RUDDER_ENGINE 0 = never start the engine here (default: start it if it is built)
# RUDDER_PORT the engine's port (default 5193)
# RUDDER_NEMO_PORT the speech server's port (default 5194)
# RUDDER_HOME where the runtime and model live (default ~/.local/share/rudder)
# RUDDER_LANG the default language (default en-US)