-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy path.env.example
More file actions
91 lines (71 loc) · 3.36 KB
/
Copy path.env.example
File metadata and controls
91 lines (71 loc) · 3.36 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
# =====================================================================
# Radar — environment variables
# Copy this file to `.env.local` and fill in what you need.
# Nothing here is required to try it locally: `npm run dev` works with
# zero configuration (embedded PGlite database, AI features simply idle).
# =====================================================================
# --- Core (recommended in production) ---
# Postgres connection string (e.g. Neon free tier).
# Leave EMPTY for local development: the app falls back to an embedded
# PGlite database stored under .data/pglite (no setup required).
DATABASE_URL=
# Secret used to sign session cookies. Set a long random string in production
# (e.g. `openssl rand -hex 32`). If unset, a well-known dev secret is used.
SESSION_SECRET=
# Public URL of the app, used in Telegram notification links.
APP_URL=
# --- Initial admin (created on first run, only if the DB is empty) ---
# If you don't set ADMIN_PASSWORD, a default admin is created
# (admin@example.com / changeme) and the app forces a password change
# at first login. New members are added later from the UI (Settings → Team).
ADMIN_EMAIL=
ADMIN_PASSWORD=
ADMIN_NAME=
# --- Branding (optional, lets anyone rebrand without touching code) ---
NEXT_PUBLIC_BRAND_NAME=
NEXT_PUBLIC_BRAND_BYLINE=
# --- AI (optional) ---
# Anthropic API key: powers sentiment, briefs, quality scores, clustering, etc.
# BRING YOUR OWN KEY — never commit it. Without it, data is still collected but
# AI analysis stays "pending". Get one at https://console.anthropic.com
# You can also enter it from the app UI (Settings → Sources & budget → AI engine),
# stored encrypted, instead of setting it here.
ANTHROPIC_API_KEY=
# Hard monthly spend cap for the Claude API, in USD (default 6).
API_BUDGET_USD=
# --- Telegram push notifications (optional) ---
# Create a bot with @BotFather, send it /start, then get your chat id.
TELEGRAM_BOT_TOKEN=
TELEGRAM_CHAT_ID=
# Protects the /api/cron/daily endpoint (Vercel sends this automatically for crons).
CRON_SECRET=
# =====================================================================
# DATA SOURCES — bring your own keys
# Every connector can also be configured from the UI (Settings → Sources),
# encrypted at rest, without editing any file. These env vars are optional
# fallbacks. You are responsible for complying with each source's Terms of
# Service and applicable data-protection laws.
# =====================================================================
# Free, but require a free registration:
# YouTube Data API v3 (free key from Google Cloud Console)
YOUTUBE_API_KEY=
# Reddit app (reddit.com/prefs/apps, type "script") — free
REDDIT_CLIENT_ID=
REDDIT_CLIENT_SECRET=
# Paid / approval-gated connectors (already implemented, just add keys):
# X API v2 Basic (paid) — recent tweet search
X_BEARER_TOKEN=
# Meta Graph API (Meta app + business account)
# - Instagram: hashtag search (needs the business account INSTAGRAM_USER_ID)
# - Facebook: posts of pages linked to the token (FACEBOOK_PAGE_ID, comma-separated for many)
META_ACCESS_TOKEN=
INSTAGRAM_USER_ID=
FACEBOOK_PAGE_ID=
# TikTok Research API (approval-gated by TikTok)
TIKTOK_CLIENT_KEY=
TIKTOK_CLIENT_SECRET=
# LinkedIn Community Management API (your organization's page posts)
LINKEDIN_ACCESS_TOKEN=
LINKEDIN_ORG_ID=
# NewsAPI.org — ~150k outlets, boolean search
NEWSAPI_KEY=