Repository navigation
Expand file tree
/
Copy pathserver.env.example
More file actions
148 lines (135 loc) · 4.71 KB
/
Copy pathserver.env.example
File metadata and controls
148 lines (135 loc) · 4.71 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
DATABASE_URL=postgresql://cryptomts:cryptomts@localhost:5432/cryptomts
REDIS_URL=redis://localhost:6379
JWT_SECRET=replace-with-strong-jwt-secret
JWT_EXPIRES_IN=7d
JWT_ACCESS_EXPIRES_IN=7d
JWT_REFRESH_EXPIRES_IN=30d
GOOGLE_IOS_CLIENT_ID=142113558371-t5s22ri6gjl5aur76s81910gf2hb8p09.apps.googleusercontent.com
GOOGLE_WEB_CLIENT_ID=
GOOGLE_CLIENT_IDS=
APPLE_CLIENT_ID=com.hwb.Cryptory
APPLE_CLIENT_IDS=
APPLE_TEAM_ID=
APPLE_KEY_ID=
APPLE_PRIVATE_KEY=
# iOS dev builds use http://127.0.0.1:3002 and ws://127.0.0.1:3002/ws/market.
PORT=3002
# Optional explicit alias. When set, it overrides PORT for the public market API listener.
PUBLIC_MARKET_API_PORT=3002
NODE_ENV=development
# Public HTTPS URLs required in production for app review.
# Do not ship placeholder or dead links.
APP_HOMEPAGE_URL=
TERMS_URL=
PRIVACY_POLICY_URL=
SUPPORT_URL=
ACCOUNT_DELETION_URL=
INVESTMENT_DISCLAIMER_URL=
COMMUNITY_POLICY_URL=
USE_LIVE_DATA=true
PUBLIC_STREAMING_ENABLED=true
# Maximum representative symbols streamed per exchange (4-200).
PUBLIC_STREAM_SYMBOL_LIMIT=50
ENABLE_PRIVATE_WS=true
ENABLE_POLLING_FALLBACK=true
# Set this to true for the App Store submission build. It force-disables
# transactional features regardless of accidental per-feature overrides.
APP_STORE_REVIEW_MODE=false
FEATURE_ORDER_ENABLED=true
FEATURE_TRADING_ENABLED=true
FEATURE_TRANSFER_ENABLED=false
FEATURE_DEPOSIT_WITHDRAW_ENABLED=false
FEATURE_WALLET_ENABLED=false
FEATURE_PRIVATE_EXCHANGE_TRADING_API_ENABLED=true
FEATURE_MARKET_ENABLED=true
FEATURE_CHART_ENABLED=true
FEATURE_NEWS_ENABLED=true
FEATURE_READ_ONLY_PORTFOLIO_ENABLED=true
FEATURE_KIMCHI_PREMIUM_ENABLED=true
FEATURE_COMMUNITY_CONTENT_ENABLED=true
USD_KRW_FALLBACK=1350
FX_BASE_URL=https://api.exchangerate.host
FX_STALE_THRESHOLD_MS=300000
MARKET_DATA_STALE_THRESHOLD_MS=300000
FX_TIMESTAMP_SKEW_THRESHOLD_MS=30000
EXCHANGE_RATE_API_KEY=
COINGECKO_API_BASE_URL=https://api.coingecko.com/api/v3
COINGECKO_API_KEY=
COINMARKETCAP_API_BASE_URL=https://pro-api.coinmarketcap.com
COINMARKETCAP_API_KEY=
COINMARKETCAP_TIMEOUT_MS=5000
USDT_RATE_CACHE_TTL_SECONDS=300
USDT_COINMARKETCAP_ID=825
CRYPTOCOMPARE_API_KEY=
MARKET_DATA_CACHE_TTL_SECONDS=1800
MARKET_DATA_PROVIDER=mixed
CANDLE_CACHE_TTL_SECONDS=30
TICKER_CACHE_TTL_SECONDS=5
DEFAULT_MARKET_CURRENCY=KRW
MARKET_COLLECTOR_ENABLED=false
MARKET_TRADE_COLLECTOR_ENABLED=false
MARKET_TREND_SNAPSHOT_ENABLED=false
MARKET_STARTUP_WARMUP_ENABLED=false
NEWS_PROVIDER=newsapi
CRYPTOPANIC_API_BASE_URL=https://cryptopanic.com/api/v1
CRYPTOPANIC_API_KEY=
CRYPTOCURRENCY_CV_API_BASE_URL=https://cryptocurrency.cv/api
CRYPTOCURRENCY_CV_API_KEY=
NEWSAPI_API_BASE_URL=https://newsapi.org/v2
NEWSAPI_API_KEY=
NEWS_CACHE_TTL_SECONDS=900
SERVICE_TIMEZONE=Asia/Seoul
# Optional comma-separated RSS feed URLs. Defaults to CoinDesk, Cointelegraph, and Decrypt public RSS.
NEWS_RSS_FEEDS=
TRANSLATION_PROVIDER=
TRANSLATION_API_BASE_URL=
TRANSLATION_MODEL=gpt-4o-mini
TRANSLATION_MAX_TEXT_LENGTH=4000
TRANSLATION_CACHE_TTL_SECONDS=2592000
LLM_API_KEY=
LLM_MODEL=gpt-4o-mini
LLM_TIMEOUT_MS=8000
OPENAI_API_KEY=
PAPAGO_CLIENT_ID=
PAPAGO_CLIENT_SECRET=
GOOGLE_TRANSLATE_API_KEY=
EXCHANGE_CREDENTIAL_ENCRYPTION_KEY=replace-with-strong-32-byte-secret
UPBIT_API_BASE_URL=https://api.upbit.com
UPBIT_WS_URL=wss://api.upbit.com/websocket/v1
BITHUMB_API_BASE_URL=https://api.bithumb.com
BITHUMB_WS_URL=wss://ws-api.bithumb.com/websocket/v1
COINONE_API_BASE_URL=https://api.coinone.co.kr
COINONE_WS_URL=wss://stream.coinone.co.kr
KORBIT_API_BASE_URL=https://api.korbit.co.kr
KORBIT_WS_URL=wss://ws-api.korbit.co.kr/v2/public
# Binance public REST is separated from private/signed REST because api.binance.com
# can return 451/403 from some production regions. Keep signed/private endpoints on api.binance.com.
# Legacy BINANCE_API_BASE_URL is still accepted as a public REST fallback only.
BINANCE_PUBLIC_API_BASE_URL=https://data-api.binance.vision
BINANCE_PRIVATE_API_BASE_URL=https://api.binance.com
BINANCE_WS_BASE_URL=wss://stream.binance.com:9443
# Optional advanced private websocket overrides.
UPBIT_PRIVATE_WS_URL=wss://api.upbit.com/websocket/v1/private
BITHUMB_PRIVATE_WS_URL=wss://ws-api.bithumb.com/websocket/v1/private
COINONE_PRIVATE_WS_URL=wss://stream.coinone.co.kr/v1/private
KORBIT_PRIVATE_WS_URL=wss://ws-api.korbit.co.kr/v2/private
# Optional server-level private credentials.
# Runtime resolution order is: user exchange connection -> server env.
UPBIT_ACCESS_KEY=
UPBIT_SECRET_KEY=
BITHUMB_API_KEY=
BITHUMB_SECRET_KEY=
COINONE_ACCESS_TOKEN=
COINONE_SECRET_KEY=
KORBIT_API_KEY=
KORBIT_SECRET_KEY=
BINANCE_API_KEY=
BINANCE_SECRET_KEY=
FIREBASE_PROJECT_ID=
FIREBASE_CLIENT_EMAIL=
FIREBASE_PRIVATE_KEY=
FCM_ENABLED=false
FCM_DRY_RUN=true
PRICE_ALERT_WORKER_ENABLED=false
PRICE_ALERT_POLL_INTERVAL_MS=10000
PRICE_ALERT_REPEAT_COOLDOWN_SECONDS=600