ENV Referansı
Her harici bağımlılık ortam değişkeni ile yapılandırılır. Repo kökünde .env.example ile gelir; ./service.sh start'tan önce onu .env'e kopyala ve production değerlerini doldur.
Çekirdek
NODE_BIN= # opsiyonel: kullanılacak node + pnpm dizini
PORT=4200 # backend HTTP listener'ı
API_PREFIX=/api/v1
BASE_URL=https://app.sosyabot.com # public backend URL'si (OAuth callback'lerde kullanılır)
FRONTEND_URL=https://app.sosyabot.com
LANDING_URL=https://sosyabot.com
CORS_ORIGINS= # virgülle ayrılmış liste (veya "*" — önerilmez)
JWT_SECRET= # zorunlu
JWT_EXPIRES_IN=7d
SESSION_SECRET= # zorunlu
WORKER_CONCURRENCY=4 # BullMQ worker eşzamanlılığıDepolama
MONGODB_URL=mongodb://... # zorunlu; şifre URL-encoded
REDIS_URL=redis://... # zorunlu; BullMQ'yu desteklerSMTP
SMTP_HOST=
SMTP_PORT=587
SMTP_USER=
SMTP_PASS=
SMTP_FROM=Sosyabot <noreply@your-domain>OTP kayıt SMTP olmadan çalışmaz. Bkz. SMTP.
Sosyal platformlar
| Platform | Anahtarlar |
|---|---|
| X (Twitter) | TWITTER_CLIENT_ID, TWITTER_CLIENT_SECRET |
| Instagram + Facebook (paylaşılan Meta uygulaması) | FACEBOOK_APP_ID, FACEBOOK_APP_SECRET |
LINKEDIN_CLIENT_ID, LINKEDIN_CLIENT_SECRET | |
| TikTok | TIKTOK_CLIENT_KEY, TIKTOK_CLIENT_SECRET |
| Threads | THREADS_APP_ID, THREADS_APP_SECRET |
| Bluesky | BLUESKY_SERVICE_URL (varsayılan https://bsky.social) |
| Mastodon | MASTODON_INSTANCE_URL, MASTODON_CLIENT_KEY, MASTODON_CLIENT_SECRET |
PINTEREST_APP_ID, PINTEREST_APP_SECRET | |
| YouTube | YOUTUBE_CLIENT_ID, YOUTUBE_CLIENT_SECRET |
REDDIT_CLIENT_ID, REDDIT_CLIENT_SECRET, REDDIT_USER_AGENT | |
| Discord | DISCORD_CLIENT_ID, DISCORD_CLIENT_SECRET, DISCORD_BOT_TOKEN |
| Slack | SLACK_CLIENT_ID, SLACK_CLIENT_SECRET, SLACK_SIGNING_SECRET |
| Listmonk | LISTMONK_BASE_URL, LISTMONK_API_KEY (veya LISTMONK_USERNAME + LISTMONK_PASSWORD) |
Telegram'ın global ENV'i yoktur — bot token'ları connect anında kullanıcı tarafından sağlanır. Bkz. Bağlantılar.
Oturum açma OAuth (Google / GitHub)
LOGIN_GOOGLE_CLIENT_ID=
LOGIN_GOOGLE_CLIENT_SECRET=
LOGIN_GITHUB_CLIENT_ID=
LOGIN_GITHUB_CLIENT_SECRET=Opsiyonel. Yapılandırıldığında auth sayfalarında "Google / GitHub ile devam et"i etkinleştirir.
AI sağlayıcıları
QEVRON_API_BASE_URL=
QEVRON_API_KEY=
OPENAI_API_KEY=
STABILITY_API_KEY=
FAL_API_KEY=
RUNWAY_API_KEY=
AI_VIDEO_PROVIDER=fal # fal | runwayFaturalandırma
BILLING_PROVIDER=stripe # stripe | iyzico | paytr
STRIPE_SECRET_KEY=
STRIPE_PUBLISHABLE_KEY=
STRIPE_WEBHOOK_SECRET= # webhook imza doğrulaması için zorunlu
IYZICO_API_KEY=
IYZICO_SECRET_KEY=
IYZICO_BASE_URL=https://sandbox-api.iyzipay.com
PAYTR_MERCHANT_ID=
PAYTR_MERCHANT_KEY=
PAYTR_MERCHANT_SALT=
PAYTR_TEST_MODE=1 # 1 sandbox, 0 canlıKısa linkler
SHORT_LINK_BASE_URL=https://sosya.bot # /s/<slug> redirect'leri için bazFrontend Vite vars (build anında okunur, bundle'a yapıştırılır)
VITE_APP_URL=https://app.sosyabot.com
VITE_DOCS_URL=https://docs.sosyabot.com
VITE_BACKEND_URL=https://app.sosyabot.com
VITE_API_URL=https://app.sosyabot.com/api/v1
VITE_DEMO_EMAIL=
VITE_CONTACT_SALES_EMAIL=
VITE_CONTACT_SUPPORT_EMAIL=
VITE_CONTACT_PRESS_EMAIL=
VITE_CONTACT_DPO_EMAIL=
VITE_CALENDLY_URL=
VITE_CONTACT_OFFICE_ADDRESS=Landing site
LANDING_DEV_PORT=3001
LANDING_PORT=4201
LANDING_ALLOWED_HOSTS= # `vite preview` için virgülle ayrılmış listeDocs site
DOCS_PORT=4202
DOCS_HOST=127.0.0.1
DOCS_BASE_URL=https://docs.sosyabot.com
DOCS_DEV_PORT=3002Visual audit (opsiyonel)
AUDIT_URL=
AUDIT_USER=
AUDIT_PASS=
AUDIT_TAG=baselineYalnızca pnpm --filter sosyabot-frontend audit:visual tarafından kullanılır.
Secret'lar için sessiz varsayılan yok
CLAUDE.md'ye göre, eksik zorunlu anahtarlar boot'ta hızla başarısız olmalıdır. Backend, herhangi bir token, anahtar veya şifre için varsayılanları sentezlemez — eksikse, API log'unda açık bir hata göreceksin.