-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
66 lines (53 loc) · 2.34 KB
/
.env.example
File metadata and controls
66 lines (53 loc) · 2.34 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
# Copy this file to .env and fill in your actual configuration values.
# --- Global Server Settings ---
SERVER_PORT="8080"
# If left blank, caching will be disabled.
REDIS_URL="redis://localhost:6379/0"
# User Agent for outgoing API requests (Optional)
# This is useful for identifying your application in logs or analytics.
API_CLIENT_USER_AGENT="Stratum-Server/1.0 (github.com/PythonicVarun/Stratum)"
# --- Project 1: Database Source (PostgreSQL) ---
PROJECT_1_ROUTE="/api/v1/users/{user_id}/avatar"
PROJECT_1_DB_DSN="postgres://youruser:yourpass@localhost:5432/yourdb?sslmode=disable"
PROJECT_1_TABLE="users"
PROJECT_1_ID_COLUMN="user_id"
PROJECT_1_SERVE_COLUMN="avatar_data"
PROJECT_1_CONTENT_TYPE="image/png"
PROJECT_1_CACHE_TTL_SECONDS="3600" # 1 hour
# --- Project 2: Database Source (MySQL) ---
PROJECT_2_ROUTE="/products/{product_sku}"
PROJECT_2_DB_DSN="youruser:yourpass@tcp(127.0.0.1:3306)/yourdb"
PROJECT_2_TABLE="products"
PROJECT_2_ID_COLUMN="product_sku"
PROJECT_2_SERVE_COLUMN="json_data"
PROJECT_2_CONTENT_TYPE="application/json"
PROJECT_2_CACHE_TTL_SECONDS="600" # 10 minutes
# --- Project 3: API Source ---
PROJECT_3_SOURCE_TYPE="api"
PROJECT_3_ROUTE="/profiles/{user_id}"
PROJECT_3_API_ENDPOINT="http://internal-api.example.com/users/{user_id}/profile"
PROJECT_3_ID_COLUMN="user_id" # Must match placeholder in ROUTE and API_ENDPOINT
PROJECT_3_CONTENT_TYPE="application/json"
PROJECT_3_CACHE_TTL_SECONDS="300" # 5 minutes
# --- Project 4: API Source with Bearer Token Auth ---
PROJECT_4_SOURCE_TYPE="api"
PROJECT_4_ROUTE="/internal/data/{data_id}"
PROJECT_4_API_ENDPOINT="http://secure-api.example.com/data/{data_id}"
PROJECT_4_ID_COLUMN="data_id"
PROJECT_4_CONTENT_TYPE="application/cbor"
PROJECT_4_CACHE_TTL_SECONDS="900" # 15 minutes
PROJECT_4_API_AUTH_TYPE="bearer"
PROJECT_4_API_AUTH_SECRET="your-super-secret-bearer-token"
# --- Project 5: API Source with Custom Header Auth ---
PROJECT_5_SOURCE_TYPE="api"
PROJECT_5_ROUTE="/docs/{doc_slug}"
PROJECT_5_API_ENDPOINT="http://docs-api.example.com/api/v3/documents/{doc_slug}"
PROJECT_5_ID_COLUMN="doc_slug"
PROJECT_5_CONTENT_TYPE="text/markdown"
PROJECT_5_CACHE_TTL_SECONDS="3600" # 1 hour
PROJECT_5_API_AUTH_TYPE="header"
PROJECT_5_API_AUTH_HEADER_NAME="X-API-Key"
PROJECT_5_API_AUTH_SECRET="your-secret-api-key"
# --- To add more projects, continue the pattern ---
# PROJECT_6_ROUTE="..."
# ...and so on.