Steps toward a tenant-neutral platform (not hardcoded to the ByteLyst products):
- The selectable product list is now configurable via NEXT_PUBLIC_PRODUCTS
(JSON array of { id, name, icon? }), defaulting to the built-in set. A pure,
defensive parser (parseProductsEnv) falls back to the default on any malformed
value so a bad env can never blank the switcher.
- The sidebar switcher auto-hides when there is <= 1 product, so a solo / freelance
/ single-tenant deployment shows no switcher clutter.
- Dedupe: the server product-config now re-exports the single client-safe list
instead of keeping a second hardcoded copy.
NOTE: true per-user "only your projects" scoping + server-side tenant
authorization still requires an ownership/membership model that does not exist
yet (ProductDoc has no owner/members; products are a global registry). That is a
deliberate, separate effort needing a product decision and is not included here.
Generated with [Devin](https://cli.devin.ai/docs)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
32 lines
1.1 KiB
Plaintext
32 lines
1.1 KiB
Plaintext
# Tracker Dashboard — Environment Variables
|
|
# Copy this file to .env.local and fill in the values.
|
|
#
|
|
# This dashboard is product-agnostic. Set PRODUCT_ID to deploy for any ByteLyst product.
|
|
|
|
# ── Product Identity ──
|
|
PRODUCT_ID=lysnrai
|
|
NEXT_PUBLIC_PRODUCT_ID=lysnrai
|
|
|
|
# Optional: override the selectable product/project list shown in the sidebar
|
|
# switcher. JSON array of { id, name, icon? }. Leave unset to use the built-in
|
|
# default. With one entry the switcher auto-hides (single-tenant deployments).
|
|
# Example: NEXT_PUBLIC_PRODUCTS=[{"id":"acme","name":"Acme App"}]
|
|
NEXT_PUBLIC_PRODUCTS=
|
|
|
|
# ── Microservice URLs (consolidated platform-service) ──
|
|
PLATFORM_SERVICE_URL=http://localhost:4003
|
|
PLATFORM_API_URL=http://localhost:4003
|
|
|
|
# ── Auth (JWT) ──
|
|
JWT_SECRET=
|
|
|
|
# ── SmartAuth: OAuth (optional — enables social login buttons) ──
|
|
NEXT_PUBLIC_GOOGLE_CLIENT_ID=
|
|
|
|
# ── Azure Key Vault (optional — resolves secrets at startup) ──
|
|
AZURE_KEYVAULT_URL=
|
|
|
|
# ── Optional: Analytics ──
|
|
NEXT_PUBLIC_POSTHOG_KEY=
|
|
NEXT_PUBLIC_POSTHOG_HOST=https://app.posthog.com
|