40 lines
1.5 KiB
Bash
40 lines
1.5 KiB
Bash
# Database
|
|
DATABASE_URL="postgresql://hashex:password@localhost:5432/hashex"
|
|
|
|
# NextAuth
|
|
NEXTAUTH_SECRET="change-me-in-production-use-openssl-rand-base64-32"
|
|
NEXTAUTH_URL="http://localhost:3000"
|
|
|
|
# Redis (BullMQ)
|
|
REDIS_URL="redis://localhost:6379"
|
|
|
|
# Mastodon API - configurable instance
|
|
MASTODON_INSTANCE="https://mastodon.social"
|
|
MASTODON_ACCESS_TOKEN="your-mastodon-access-token"
|
|
|
|
# Worker tuning
|
|
# Milliseconds to wait between Mastodon API calls (default: 2000 = 2s, safe for most instances)
|
|
WORKER_RATE_LIMIT_MS=2000
|
|
# How often (minutes) to queue a full price-update sweep (default: 60)
|
|
PRICE_UPDATE_INTERVAL_MINUTES=60
|
|
# How long (hours) a hashtag stays active after being researched or after its last position closes (default: 24)
|
|
HASHTAG_ACTIVE_HOURS=24
|
|
# Max pagination pages to fetch when counting posts (default: 5 = up to 200 posts)
|
|
MAX_PAGES_PER_HASHTAG=5
|
|
# Price history retention: days to keep for active hashtags, hours for inactive ones
|
|
PRICE_HISTORY_ACTIVE_DAYS=7
|
|
PRICE_HISTORY_INACTIVE_HOURS=24
|
|
# Consecutive zero-post updates before all positions are force-closed and the hashtag retired
|
|
ZOMBIE_ZERO_COUNT=1000
|
|
|
|
# Initial admin user — only used by `npm run db:seed`, not the running app.
|
|
# Pass these at seed time: docker exec -e ADMIN_USERNAME=x -e ADMIN_PASSWORD=y <container> npm run db:seed
|
|
# If omitted, defaults to admin / changeme123 (change immediately after first login).
|
|
# ADMIN_USERNAME=admin
|
|
# ADMIN_PASSWORD=changeme123
|
|
|
|
# Postgres (used by postgres container in prod-compose.yml)
|
|
POSTGRES_DB=hashex
|
|
POSTGRES_USER=hashex
|
|
POSTGRES_PASSWORD=changeme
|