Skip to content

docs: document every environment variable across the monorepo (#579) - #627

Closed
ZacLou wants to merge 2 commits into
StayLitCodes:mainfrom
ZacLou:docs/environment-documentation
Closed

docs: document every environment variable across the monorepo (#579)#627
ZacLou wants to merge 2 commits into
StayLitCodes:mainfrom
ZacLou:docs/environment-documentation

Conversation

@ZacLou

@ZacLou ZacLou commented Aug 29, 2026

Copy link
Copy Markdown

Overview

Fixes #579 — creates docs/ENVIRONMENT.md listing every environment variable used across the Vaultix monorepo.

What's in the doc

Per-service variable listing

Each variable is documented with: name, owning service, required/optional, whether it's a secret, default value, and purpose.

Services covered:

  • Backend (apps/backend) — 38 variables
  • Frontend (apps/frontend) — 5 variables (including the deprecated NEXT_PUBLIC_API_BASE_URL)
  • Mobile (apps/mobile) — 6 variables (including the removed EXPO_PUBLIC_API_BASE_URL)
  • Onchain deployment — no direct env vars (injected via backend)

Conflict & duplicate register

Explicitly identifies conflicting/duplicate variables with their canonical names and resolution status:

Cross-service variables (must agree)

Groups variables that must be consistent across services so drift is obvious:

  • API URL (PORT / NEXT_PUBLIC_API_URL / EXPO_PUBLIC_API_URL)
  • Stellar Network (STELLAR_NETWORK / NEXT_PUBLIC_STELLAR_NETWORK / EXPO_PUBLIC_APP_ENV)
  • Soroban RPC (STELLAR_RPC_URL / EXPO_PUBLIC_RPC_URL)
  • Contract ID (STELLAR_CONTRACT_ID)

Quick start examples

Copy-pasteable .env blocks for each service.

Acceptance Criteria Checklist

  • A new docs/ENVIRONMENT.md lists every environment variable per service (backend, frontend, mobile, onchain deployment)
  • Each entry records: name, owning service, purpose, whether it is required, example value, and whether it is a secret
  • Duplicate or conflicting variables are identified explicitly with the intended canonical name
  • Variables that must agree across services are grouped so drift is obvious
  • The doc states [resolution status for each conflict]

Closes #579

鲁班七号 added 2 commits August 29, 2026 08:55
…LitCodes#557)

- services/api.ts now imports apiUrl from security/env.ts instead of
  reading EXPO_PUBLIC_API_BASE_URL directly
- EXPO_PUBLIC_API_BASE_URL is fully removed from the codebase
- security/env.ts: corrected dev rpcUrl default from 8545 (EVM port) to
  8000 (Soroban RPC port)
- validateEnv() now provides detailed warnings in development when env
  vars are missing or still using defaults
- validateEnv() is called at app start in app/_layout.tsx
- Added apps/mobile/.env.example documenting EXPO_PUBLIC_APP_ENV,
  EXPO_PUBLIC_API_URL, and EXPO_PUBLIC_RPC_URL

Closes StayLitCodes#557
…tCodes#579)

Created docs/ENVIRONMENT.md listing every env var per service (backend,
frontend, mobile, onchain deployment) with:
- Variable name, owning service, required/optional, secret flag, default
- Conflict & duplicate register (EXPO_PUBLIC_API_BASE_URL vs
  EXPO_PUBLIC_API_URL, NEXT_PUBLIC_API_BASE_URL vs NEXT_PUBLIC_API_URL,
  API_BASE_URL)
- Cross-service variables that must agree (API URL, Stellar network,
  Soroban RPC, contract ID)
- Quick start examples for each service

Closes StayLitCodes#579
@Cedarich Cedarich closed this Aug 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[DOCS] Document every environment variable across the monorepo

2 participants