Discord badge aggregation API built with Bun and Redis.
Live: https://badges.equicord.org
bun install
cp .env.example .env
# Edit .env with REDIS_URL
bun run startRequirements: Bun v1.2.9+, Redis
GET /:userId?services=vencord,equicord&separated=trueservices- Comma/space-separated list (default: all)exclude- Exclude servicescache- Use cache (default: true)separated- Group by service (default: false)capitalize- Capitalize service names (with separated)
Vencord, Equicord, Nekocord, ReviewDB, Aero, Aliucord, Ra1ncord, Velocity, BadgeVault, Enmity, Discord, Replugged
Requires X-Admin-API-Key header.
POST /admin/cache/refresh?service=vencord
POST /admin/cache/clear?service=vencord
GET /admin/cache/metrics
POST /admin/cache/reset-metricsRequired:
REDIS_URL- Redis connection string
Optional:
REDIS_TTL- Cache TTL in seconds (default: 3600)DISCORD_TOKEN- For Discord badgesADMIN_API_KEY- Admin endpoints authBLOCKLIST_ENABLED- Enable blocklist (default: true)
See .env.example for all options.
bun run lint # Check code
bun run lint:fix # Auto-fix issues
bunx tsc --noEmit # Type check
docker compose up # Run with Docker