Zero-config local setup: .env.example spells out every local default; README love line

A fresh clone needs no .env. .env.example lists each local setting with its default, and an empty value
means the default: DX_SYNC_REMOTE empty = hot reload of local edits only; DX_PB_URL empty = a local
PocketBase. Rudder's settings are marked as shell-environment only, since the dev server reads them there.
This commit is contained in:
Doxa Maps 2026-09-28 01:13:57 +00:00
parent 86471947fc
commit 8c529c0313
2 changed files with 41 additions and 14 deletions

View file

@ -1,16 +1,41 @@
# Mapbox token used in dev. Production hosts pass the token via profile-config.tk
# on the host page; never bake into the IIFE bundle.
VITE_MAPBOX_TOKEN=pk.your_dev_token_here
# .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.) for the map backgrounds. Empty = no Mapbox background; set
# "provider": "maplibre" on a plugin (or ?provider=maplibre on a page) to draw with MapLibre, 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
# Follow a shared branch while `bun run dev` runs (internal/dev-sync-plugin.mjs): fetch every N seconds and
# fast-forward when this checkout is on that branch with no local edits; otherwise only report it at
# /api/dev-sync. DX_SYNC_REMOTE is a remote name (origin) or a repo URL; leave it unset to turn this off.
# DX_SYNC_REMOTE=origin
# DX_SYNC_BRANCH=main
# DX_SYNC_INTERVAL=5
# ── 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 "main is N commits ahead" (in the log and at /api/dev-sync). It never merges over your work.
DX_SYNC_REMOTE=
# The branch to follow. Empty = main.
DX_SYNC_BRANCH=
# Seconds between checks. Empty = 5 (minimum 2).
DX_SYNC_INTERVAL=
# PocketBase for plugins (internal/backend-dev-plugin.mjs): `bun run dev` downloads the pinned binary once
# and serves it at /api/pb, data in .pb/dev. DX_PB_URL uses a shared PocketBase instead of a local one.
# DX_PB_PORT=8090
# DX_PB_URL=
# ── 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)

View file

@ -4,6 +4,8 @@ Made by Vibe Coders for Vibe Coders to prepare the way of the Lord and make His
**Isaiah 40:3 “...Prepare the way for the LORD in the wilderness; make a straight highway for our God in the desert."**
Built with love, with the prayer that these maps bless the nations.
# dx-maps — one build, maps that embed everywhere
**Write a map once in `plugin-designs/<your-map>/`, run one build, and drop it on any site** —
@ -653,7 +655,7 @@ background. For Rudder's voice engine, also **[Go](https://go.dev/dl/) 1.22+**,
git clone --depth 1 https://git.nuxtbase.app/doxa-open/doxa-maps.git # latest code only: seconds, not hundreds of MB of history
cd doxa-maps
bun install --frozen-lockfile
cp .env.example .env # then paste your pk. token after VITE_MAPBOX_TOKEN=
cp .env.example .env # optional: paste your pk. token after VITE_MAPBOX_TOKEN=
bun run dev # → http://localhost:5173/ is the Plugin Studio
```