-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
62 lines (50 loc) · 2.04 KB
/
.env.example
File metadata and controls
62 lines (50 loc) · 2.04 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
# Gemini API Configuration
# Get your API key from: https://aistudio.google.com/app/apikey
GEMINI_API_KEY=your_gemini_api_key_here
# Gemini Model Selection
# Options: gemini-2.5-flash (stable), gemini-2.5-pro (for complex SPARQL generation)
# Note: CLAUDE.md recommends gemini-2.5-pro for SPARQL generation due to complexity
GEMINI_MODEL=gemini-2.5-flash
# Redis Configuration (for BullMQ and caching)
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_DB=0
# Server Configuration
PORT=3000
NODE_ENV=development
LOG_LEVEL=info
# Cache TTL Configuration (in seconds)
CACHE_TTL_NOMINATIM=259200 # 72 hours - geographic coordinates are static
CACHE_TTL_OPENMETEO=900 # 15 minutes - weather data is volatile
CACHE_TTL_WIKIDATA=21600 # 6 hours - facts are semi-static
CACHE_TTL_WIKIPEDIA=86400 # 24 hours - encyclopedia content
CACHE_TTL_DUCKDUCKGO=3600 # 1 hour - search results
# Rate Limiting Configuration
NOMINATIM_RATE_LIMIT_MAX=1 # Max requests per duration
NOMINATIM_RATE_LIMIT_DURATION=1000 # Duration in milliseconds (1 second)
# External API Configuration
# User-Agent for Nominatim (REQUIRED - see https://operations.osmfoundation.org/policies/nominatim/)
NOMINATIM_USER_AGENT=WikidAI/1.0 (your_email@example.com)
# API Endpoints (usually don't need to change)
WIKIDATA_SPARQL_ENDPOINT=https://query.wikidata.org/sparql
WIKIPEDIA_API_ENDPOINT=https://en.wikipedia.org/api/rest_v1
DUCKDUCKGO_API_ENDPOINT=https://api.duckduckgo.com
OPENMETEO_API_ENDPOINT=https://api.open-meteo.com/v1
NOMINATIM_API_ENDPOINT=https://nominatim.openstreetmap.org
GEOCODING_API_ENDPOINT=https://geocoding-api.open-meteo.com/v1
# Monitoring Configuration
ENABLE_METRICS=true
METRICS_PORT=9090
# CORS Configuration
CORS_ORIGIN=http://localhost:5173
CORS_CREDENTIALS=true
# Security
# Set to 'true' in production to enforce HTTPS
FORCE_HTTPS=false
# Logging
# Options: trace, debug, info, warn, error, fatal
PINO_LOG_LEVEL=info
PRETTY_PRINT=true
# Frontend Configuration (if using Vite)
VITE_API_BASE_URL=http://localhost:3000/api