-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
68 lines (55 loc) · 4.25 KB
/
.env.example
File metadata and controls
68 lines (55 loc) · 4.25 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
# ── Environment ────────────────────────────────────────────────────────────
ENVIRONMENT=development
# IMPORTANT: Change this to a long random string in production!
SECRET_KEY=change-me-in-production
# ── Database ────────────────────────────────────────────────────────────────
DATABASE_URL=postgresql+asyncpg://tokenbudget:localdev@localhost:5432/tokenbudget
DB_POOL_SIZE=20
DB_MAX_OVERFLOW=10
DB_POOL_RECYCLE=3600
# ── Redis ───────────────────────────────────────────────────────────────────
REDIS_URL=redis://localhost:6379
# ── Signup kill switch ──────────────────────────────────────────────────────
# Set to false to disable new account/key creation (e.g., maintenance mode)
SIGNUPS_ENABLED=true
SIGNUPS_PAUSED_MESSAGE=New signups are temporarily paused. Check back soon.
# ── Free tier limits ────────────────────────────────────────────────────────
FREE_EVENTS_PER_MONTH=10000
FREE_KEYS_MAX=3
FREE_RETENTION_DAYS=30
FREE_PROJECTS_MAX=3
# ── Pro tier limits ─────────────────────────────────────────────────────────
PRO_EVENTS_PER_MONTH=500000
PRO_KEYS_MAX=20
PRO_RETENTION_DAYS=365
PRO_PROJECTS_MAX=50
# ── Team tier limits ─────────────────────────────────────────────────────────
TEAM_EVENTS_PER_MONTH=5000000
TEAM_KEYS_MAX=100
TEAM_RETENTION_DAYS=730
TEAM_PROJECTS_MAX=500
# ── Rate limiting ────────────────────────────────────────────────────────────
RATE_LIMIT_EVENTS_PER_SECOND=100
RATE_LIMIT_BURST=200
# ── CORS ─────────────────────────────────────────────────────────────────────
# JSON array syntax required for pydantic-settings list parsing
CORS_ORIGINS=["http://localhost:5173","http://localhost:3000"]
# ── Admin ─────────────────────────────────────────────────────────────────────
# Required for /api/admin/* endpoints. Leave empty to disable.
ADMIN_KEY=change-this-admin-key
# ── Nightly purge job ─────────────────────────────────────────────────────────
PURGE_ENABLED=true
PURGE_BATCH_SIZE=5000
# Hour and minute (UTC) for the nightly purge cron
PURGE_CRON_HOUR=3
PURGE_CRON_MINUTE=0
# ── Clerk Auth (get keys from https://clerk.com) ──────────────────────────────
# When CLERK_SECRET_KEY is set, the dashboard accepts Clerk session JWTs
# in addition to the existing tb_ak_ API key flow (which always works).
# Leave both empty to rely solely on API key auth (the current default).
CLERK_SECRET_KEY=sk_test_REPLACE_ME
VITE_CLERK_PUBLISHABLE_KEY=pk_test_REPLACE_ME
# ── Stripe ───────────────────────────────────────────────────────────────────
STRIPE_SECRET_KEY=
# ── Frontend ──────────────────────────────────────────────────────────────────
VITE_API_URL=http://localhost:8000