-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
150 lines (121 loc) · 8.09 KB
/
Copy path.env.example
File metadata and controls
150 lines (121 loc) · 8.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# ═══════════════════════════════════════════════════════════════════════════════
# TradeGateway™ NGSWTP — Environment Variables Reference
# ═══════════════════════════════════════════════════════════════════════════════
# Copy this file to .env and fill in the values for your environment.
# NEVER commit .env to version control.
# ═══════════════════════════════════════════════════════════════════════════════
# ── DATABASE ─────────────────────────────────────────────────────────────────
# PostgreSQL connection string (TiDB-compatible)
DATABASE_URL=postgresql://user:password@host:5432/tradegateway
# ── AUTHENTICATION ───────────────────────────────────────────────────────────
# JWT secret for session cookie signing (min 32 chars, use openssl rand -hex 32)
JWT_SECRET=your-jwt-secret-here
# Manus OAuth application ID
VITE_APP_ID=your-oauth-app-id
# Manus OAuth backend base URL
OAUTH_SERVER_URL=https://api.manus.im
# Manus login portal URL (frontend)
VITE_OAUTH_PORTAL_URL=https://manus.im/login
# Owner identity (auto-populated by Manus platform)
OWNER_OPEN_ID=
OWNER_NAME=
# ── MANUS BUILT-IN APIS ──────────────────────────────────────────────────────
# Server-side API key for Manus built-in APIs (LLM, storage, notifications)
BUILT_IN_FORGE_API_KEY=your-forge-api-key
BUILT_IN_FORGE_API_URL=https://api.manus.im
# Frontend API key (safe to expose to browser)
VITE_FRONTEND_FORGE_API_KEY=your-frontend-forge-api-key
VITE_FRONTEND_FORGE_API_URL=https://api.manus.im
# ── EMAIL (SENDGRID) ─────────────────────────────────────────────────────────
# Required for nightly compliance CSV email delivery and executive digest
# Get from: https://app.sendgrid.com/settings/api_keys
SENDGRID_API_KEY=SG.your-sendgrid-api-key
# Sender email address (must be verified in SendGrid)
DIGEST_FROM_EMAIL=tradegateway@yourdomain.com
# Default recipients for executive digest (comma-separated)
DIGEST_RECIPIENTS=admin@yourdomain.com
# ── ANALYTICS ────────────────────────────────────────────────────────────────
VITE_ANALYTICS_ENDPOINT=https://analytics.manus.im
VITE_ANALYTICS_WEBSITE_ID=your-website-id
# ── OPTIONAL: EXTERNAL SERVICES ──────────────────────────────────────────────
# These are optional and the platform gracefully degrades without them.
# Permify RBAC service (optional — falls back to role-based checks)
PERMIFY_HOST=http://localhost:3476
PERMIFY_TOKEN=
# Keycloak IAM (optional — falls back to Manus OAuth)
KEYCLOAK_URL=http://localhost:8080
KEYCLOAK_REALM=tradegateway
KEYCLOAK_CLIENT_ID=tradegateway-api
KEYCLOAK_CLIENT_SECRET=
# Temporal workflow engine (optional — falls back to direct DB operations)
TEMPORAL_ADDRESS=localhost:7233
TEMPORAL_NAMESPACE=default
# Redis (optional — falls back to in-memory session store)
REDIS_URL=redis://localhost:6379
# TigerBeetle financial ledger (optional — falls back to PostgreSQL)
TIGERBEETLE_ADDRESS=localhost:3000
TIGERBEETLE_CLUSTER_ID=0
# Fluvio real-time streaming (optional — falls back to Kafka)
FLUVIO_ENDPOINT=localhost:9003
# Kafka event bus (optional — falls back to direct DB writes)
KAFKA_BROKERS=localhost:9092
KAFKA_CLIENT_ID=tradegateway-api
# ── OPTIONAL: SECURITY INTEGRATIONS ─────────────────────────────────────────
# OpenCTI threat intelligence (optional)
OPENCTI_URL=http://localhost:8080
OPENCTI_TOKEN=
# Wazuh SIEM (optional)
WAZUH_URL=https://localhost:55000
WAZUH_USER=admin
WAZUH_PASSWORD=
# ── OPTIONAL: MAPS ───────────────────────────────────────────────────────────
# Google Maps is proxied through Manus — no API key required.
# The VITE_FRONTEND_FORGE_API_KEY handles map authentication automatically.
# VITE_GOOGLE_MAPS_MAP_ID — Google mapId (defaults to DEMO_MAP_ID when unset).
#
# Phase 17 — bundled MapLibre/Cesium geospatial portal (/app/geo/portal):
# VITE_MAP_STYLE_URL=https://tiles.openfreemap.org/styles/liberty # 2D vector style (or your same-origin tile proxy)
# VITE_CESIUM_TOKEN= # Cesium Ion token; UNSET = Ion-free OSM imagery + ellipsoid terrain (no Ion requests)
# VITE_FLUVIO_WS_URL= # AIS/declaration WS feed; unset = wss://<host>/ws; "off" = disabled
#
# Production CSP (fail-closed by default). Whitelist ONLY the tile origins in use:
# CSP_CONNECT_SRC_EXTRA=https://tiles.openfreemap.org,https://tile.openstreetmap.org
# CSP_SCRIPT_SRC_EXTRA= # only if a maps script must load from another origin
# CSP_IMG_SRC_EXTRA= # raster tile origins if img-src is ever tightened
# ── NODE ENVIRONMENT ─────────────────────────────────────────────────────────
NODE_ENV=production
PORT=3000
# ─── AI Microservices ──────────────────────────────────────────────────────────
GNN_RISK_URL=http://gnn-risk:8092
HS_CLASSIFIER_URL=http://hs-classifier:8093
RISK_AI_URL=http://risk-ai:8094
VISION_SVC_URL=http://vision-service:8095
ANOMALY_DETECTION_URL=http://anomaly-detection:8091
DELTALAKE_SVC_URL=http://deltalake-svc:8000
# ─── OpenAppSec WAF ────────────────────────────────────────────────────────────
OPEN_APPSEC_MODE=prevent
OPEN_APPSEC_UPSTREAM=http://apisix:9080
OPENAPPSEC_AGENT_URL=http://openappsec-agent:8119
# ─── TigerBeetle Bridge ────────────────────────────────────────────────────────
TIGERBEETLE_BRIDGE_URL=http://tigerbeetle-bridge:50055
TIGERBEETLE_ADDRESS=tigerbeetle:3000
TIGERBEETLE_CLUSTER_ID=0
# ─── Competitive Gap Services ──────────────────────────────────────────────────
PERMIFY_URL=http://permify:3476
MOJALOOP_HUB_URL=http://mojaloop-hub:4000
WTO_VALUATION_SERVICE_URL=http://wto-valuation-engine:8095
AEO_MRA_SERVICE_URL=http://aeo-mra-service:8096
TRADE_FINANCE_SERVICE_URL=http://trade-finance-service:8097
DIGITAL_TRADE_DOCS_URL=http://digital-trade-docs:8098
COMPLIANCE_SCREENING_URL=http://compliance-screening:8099
OPENSEARCH_URL=http://opensearch:9200
OPENSEARCH_USER=admin
OPENSEARCH_PASSWORD=admin
APISIX_ADMIN_URL=http://apisix:9180
APISIX_ADMIN_KEY=edd1c9f034335f136f87ad84b625c8f1
OPENAPPSEC_URL=http://openappsec:8080
# ─── NCS-NRS Integration (NSW Phase 1) ────────────────────────────────────────
NCS_NRS_GATEWAY_URL=http://ncs-nrs-gateway:8101
NRS_WEBHOOK_URL=https://nrs.gov.ng/api/v1/ncs/vat-prefill
NCS_NRS_WEBHOOK_SECRET=change-me-in-production
CBN_USD_NGN_RATE=1580.0