-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path.env.example
More file actions
150 lines (121 loc) · 6.19 KB
/
.env.example
File metadata and controls
150 lines (121 loc) · 6.19 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
# =============================================================================
# ENVIRONMENT CONFIGURATION EXAMPLE
# Copy this file to .env.local and fill in your actual values
# This file contains only environment variables actually used in the code
# =============================================================================
# =============================================================================
# DATABASE CONFIGURATION (Required - Shared across all apps)
# =============================================================================
DATABASE_URL=postgresql://user:password@localhost:5432/codeofconduct
# =============================================================================
# AI SERVICES CONFIGURATION (Optional but recommended)
# =============================================================================
# OpenRouter API Configuration (used by web app and required by the-brain)
# Get your API key from: https://openrouter.ai/keys
OPENROUTER_API_KEY=sk-or-v1-your-openrouter-key-here
# NEAR AI Configuration (used by web app - optional)
NEARAI_API_KEY=sk-v3-your-nearai-key-here
# =============================================================================
# DISCOURSE MONITORING CONFIGURATION (Required for discourse-listener)
# =============================================================================
# Discourse instance configuration (used by discourse-listener)
DISCOURSE_BASE_URL=https://gov.near.org
# =============================================================================
# TELEGRAM MONITORING CONFIGURATION (Required for telegram-listener)
# =============================================================================
# Telegram API Configuration (used by telegram-listener)
# Get these values from https://my.telegram.org/auth
TELEGRAM_API_ID=your_api_id_here
TELEGRAM_API_HASH=your_api_hash_here
# Session file for authentication persistence
TELEGRAM_SESSION_FILE=telegram_session.bin
# Optional: base64-encoded session data for platforms without persistent disks
# TELEGRAM_SESSION_DATA=
# Channels to monitor (comma-separated)
# Can use channel IDs (numbers) or usernames (@channel_name)
TELEGRAM_CHANNELS=@example_channel,@another_channel,-1001234567890
# Optional: maximum messages to sync per channel (unset for unlimited)
# MAX_MESSAGES_TO_SYNC=1000
# Telegram Sync Configuration (optional - these are defaults)
SYNC_BATCH_SIZE=100
SYNC_INTERVAL_MINUTES=15
MAX_CONCURRENT_CHANNELS=5
MAX_RETRY_ATTEMPTS=3
RETRY_BASE_DELAY_SECONDS=60
MAX_DB_CONNECTIONS=10
TELEGRAM_ALLOW_INTERACTIVE_LOGIN=false
# =============================================================================
# WEB APPLICATION CONFIGURATION (Required for web app)
# =============================================================================
# Better Auth Configuration (generate secure random values)
BETTER_AUTH_SECRET=your-secure-random-secret-key-here
BETTER_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_APP_URL=http://localhost:3000
NEXT_PUBLIC_NEAR_NETWORK=mainnet
DEV_AUTH_BYPASS=true
# Needed when running the production web image locally (Docker/Compose smoke tests)
IS_LOCAL=true
DOCKER_ENV=development
# GitHub OAuth Configuration (required for authentication)
# Create OAuth App at: https://github.com/settings/developers
# Set Authorization callback URL to: http://localhost:3000/api/auth/callback/github
GITHUB_CLIENT_ID=your-github-client-id
GITHUB_CLIENT_SECRET=your-github-client-secret
# NEAR Authentication Configuration (used by web app)
# Optional: Email domain for NEAR accounts (e.g., 'near.yourdomain.com')
NEAR_EMAIL_DOMAIN=
# Optional: Allow anonymous NEAR sign-ins (true/false)
NEAR_ALLOW_ANONYMOUS=false
# NEAR network to target for account validation (e.g., mainnet, testnet, betanet)
NEAR_NETWORK=testnet
# Optional: Override the NEAR RPC endpoint used for validation (defaults from NEAR_NETWORK)
NEAR_RPC_URL=
# Optional: Override the NEAR explorer base URL used for profile links
NEAR_EXPLORER_URL=https://explorer.near.org/accounts
# Feature Flags Configuration (used by web app)
# Generate with: node -e "console.log(crypto.randomBytes(32).toString('base64url'))"
FLAGS_SECRET=your-32-byte-base64url-encoded-secret-here
# UserJot Feedback Widget Configuration (optional)
# Get your project ID from: https://userjot.com/dashboard
# NEXT_PUBLIC_USERJOT_PROJECT_ID=your-userjot-project-id
# Email Configuration - Resend (optional)
# Get your API key from: https://resend.com/api-keys
# RESEND_API_KEY=re_your-resend-key-here
# EMAIL_FROM=noreply@yourdomain.com
# =============================================================================
# NEAR BALANCE LISTENER CONFIGURATION (Required for near-balance-listener)
# =============================================================================
# FastNEAR API Configuration (used by near-balance-listener)
FASTNEAR_API_URL=https://api.fastnear.com
# FastNEAR API Key (optional - required for paid plans with higher rate limits)
# Leave empty to use free public endpoints
# Get your API key from: https://dashboard.fastnear.com
FASTNEAR_API_KEY=
# Balance monitoring configuration (optional - these are defaults)
# How often to poll for balance updates (in minutes)
NEAR_BALANCE_POLL_INTERVAL_MINUTES=15
# Number of users to process in each batch
NEAR_BALANCE_BATCH_SIZE=50
# Number of concurrent API requests
NEAR_BALANCE_CONCURRENCY=10
# =============================================================================
# THE BRAIN WORKER CONFIGURATION (Optional - these are defaults)
# =============================================================================
# Worker performance configuration (used by the-brain)
RATING_CONCURRENCY=5
POLL_INTERVAL_MS=5000
MAX_RETRIES=3
PROCESSING_TIMEOUT_MS=900000
# Health check configuration
HEALTH_PORT=3001
# PORT will override the health server port if provided by your platform
PORT=3001
# =============================================================================
# LOGGING & DEBUGGING (Optional - these are defaults)
# =============================================================================
# Node.js environment
# NOTE: NODE_ENV is set automatically by Next.js and should not be set manually
# NODE_ENV=development
# Rust logging level (for discourse-listener and telegram-listener)
# Options: trace, debug, info, warn, error
RUST_LOG=info