Cross-platform bot directory for Discord and Fluxer — browse, vote, review and list bots from one product identity. Built with Next.js 15, Supabase and NextAuth (Discord).
cd "botlisting website"
npm installCopy .env.example to .env.local:
| Variable | Purpose |
|---|---|
NEXT_PUBLIC_SUPABASE_URL |
Supabase project URL |
SUPABASE_SERVICE_ROLE_KEY |
Server-side DB access |
DISCORD_CLIENT_ID / DISCORD_CLIENT_SECRET |
Discord OAuth |
NEXTAUTH_URL |
http://localhost:3000 locally |
NEXTAUTH_SECRET |
Random string |
BOTNEXUS_SCHEMA_V2 |
true for cross-platform schema (recommended) |
FLUXER_CLIENT_ID / FLUXER_CLIENT_SECRET |
Fluxer OAuth (connected accounts) |
RESEND_API_KEY / RESEND_FROM |
Owner email notifications (optional) |
BOTNEXUS_ADMIN_EMAIL |
Admin moderation alerts (optional) |
Without Supabase the app runs in demo mode with sample cross-platform bots (browse, reviews/commands tabs, analytics UI). Votes, submissions and admin persistence need Supabase.
New project (v2 — recommended):
supabase/schema-v2.sql
Set BOTNEXUS_SCHEMA_V2=true in .env.local.
Legacy v1: run supabase/schema.sql and leave BOTNEXUS_SCHEMA_V2=false.
Migrate v1 → v2: backup first, then run supabase/migrate-v1-to-v2.sql.
Seed demo bots (production): run supabase/seed-production.sql after schema-v2.
Optional: run supabase/add-notification-email.sql, supabase/add-bot-webhooks.sql, and supabase/add-listing-approval.sql for owner notifications, outbound webhooks, and AI-assisted listing approval.
Dev seed API: POST /api/seed when BOTNEXUS_DEV_SEED=true (requires v2 + Supabase keys).
- Discord Developer Portal → OAuth2
- Redirect:
http://localhost:3000/api/auth/callback/discord - Scope:
identify
npm run devOpen http://localhost:3000.
| Command | Description |
|---|---|
npm run dev |
Development server |
npm run build |
Production build |
npm run typecheck |
TypeScript check |
| Path | Description |
|---|---|
/ |
Homepage (multi-platform sections) |
/bots |
Browse + platform filters |
/bot/[slug] |
Profile (overview, platforms, stats, reviews, commands) |
/platforms/discord · /platforms/fluxer |
Platform landings |
/dashboard/bots/new |
7-step add-bot wizard |
/dashboard/bots/[slug]/developer |
API tokens + stats integration |
/dashboard/bots/[slug]/commands |
Command editor per platform |
/dashboard/settings |
Connected Discord + Fluxer accounts |
/docs/sdk |
Stats API documentation |
POST /api/v1/bots/:botId/stats |
Developer stats API (Bearer token) |
GET /api/v1/bots/:botId/votes/check |
Vote check for rewards (Bearer token) |
See IMPLEMENTATION_PLAN.md for the full checklist.
Private project — BotNexus / CodeCraft.