-
Notifications
You must be signed in to change notification settings - Fork 0
Getting‐Started
git clone https://github.com/timeout187/botfleet.git
cd botfleet
npm install
cp .env.example .env
# edit .env: DATABASE_URL, BOTFLEET_ENCRYPTION_KEY, AUTH_DISCORD_ID/SECRET,
# AUTH_SECRET, BOTFLEET_ADMIN_DISCORD_IDS
npx prisma migrate deploy
npm run devGenerate the two required secrets:
openssl rand -base64 32 # BOTFLEET_ENCRYPTION_KEY
openssl rand -base64 32 # AUTH_SECRETCreate a Discord OAuth app at the
Discord Developer Portal,
add http://localhost:3000/api/auth/callback/discord as a redirect, and
put its client ID/secret in .env. Put your own Discord user ID in
BOTFLEET_ADMIN_DISCORD_IDS to be promoted to owner on first sign-in.
Visit http://localhost:3000/ - it redirects to /setup until an owner
account exists, then to /login, then to /admin once you've signed in.
Want something to look around with instead of an empty dashboard?
npx prisma db seedCreates 3 fake customers, 4 bots (mixed online/failed/offline), 2 workers,
shards, and alerts. Entirely synthetic - see prisma/seed.ts.
cp .env.example .env # fill in the same values as above
export $(grep -v '^#' .env | xargs)
docker compose up --build -dRuns the app, Postgres, and Redis (reserved for a future AI worker queue, not wired up yet) in containers; migrations run automatically on start.
- Architecture for how the pieces fit together
- Security for the token vault and authZ model
- API Reference for every route