Architecture: How should environment configuration (API URLs, mock setting...
Documentation for Sessions
🏗️ Architecture: How should environment configuration (API URLs, mock setting...
Date: 2026-02-05
Time: 04:40:34 UTC
Session: editor2-89.13
Agent: backend
Confidence: 95%
Status: ✅ Documented
📋 Decision Context
Question:
How should environment configuration (API URLs, mock settings) be shared across apps?
Task: Not specified
🎯 Decision Made
Chosen:
Centralize in @libs-foundational/api-config library
Options Considered:
- Hardcode URLs in each app
- Create environment files per app with copy-paste constants
- Centralize in @libs-foundational/api-config library
- Use runtime configuration from backend
💭 Reasoning
DRY principle applied to environment configuration. The @libs-foundational/api-config library provides: 1) BACKEND_URLS, AI_API_URLS, DOCS_API_URLS constants for all environments, 2) SHARED_CONFIG with common settings (storage, sync, timeouts), 3) ENVIRONMENT_PRESETS for quick setup, 4) provideApiConfig() and provideApiConfigWithMock() helper functions, 5) Centralized proxy.conf.json for all apps. Each app's environment.ts imports from this library and adds only app-specific settings (appName, appPort, subdomain). This ensures all apps use consistent URLs and can switch between mock/proxy/production modes uniformly.
📁 Files Involved
libs/libs-foundational/api-config/src/lib/environment.shared.tslibs/libs-foundational/api-config/src/lib/environment-presets.tslibs/libs-foundational/api-config/proxy.conf.jsonapps/gograb-admin/src/environments/environment.tsapps/gograb-dev/src/environments/environment.ts
🔗 Related
- Decision ID:
dev_1770266434818_46wtg7m - Session: 89
- Workspace: editor2
Auto-generated by MCP Smart Consolidation