A fast Discord badge aggregation API built with bun
  • TypeScript 98.6%
  • Dockerfile 1.4%
Find a file
thororen1234 822d34219a
bleh
2025-11-27 03:40:13 -05:00
.github/workflows github actions 2025-11-17 14:57:18 -05:00
config Update Ra1ncord URL 2025-11-23 11:08:20 -05:00
public change equicord to a png, move some enmity to local files 2025-10-04 20:27:50 -04:00
src bleh 2025-11-27 03:40:13 -05:00
types bleh 2025-11-27 03:40:13 -05:00
.dockerignore add compose logic 2025-06-09 18:12:48 -04:00
.editorconfig first commit 2025-04-19 11:58:49 -04:00
.env.example alot more refactoring 2025-11-17 13:24:14 -05:00
.gitattributes first commit 2025-04-19 11:58:49 -04:00
.gitignore bleh 2025-11-27 03:40:13 -05:00
biome.json some refactoring 2025-11-06 22:57:44 -05:00
bun.lock Update bun.lock 2025-10-05 14:37:00 -04:00
compose.yml update compose, add docker readme 2025-10-04 20:30:12 -04:00
DOCKER.md update compose, add docker readme 2025-10-04 20:30:12 -04:00
Dockerfile update biome and add to dockerfile 2025-10-05 14:36:41 -04:00
LICENSE change to bsd -3 2025-04-28 18:04:55 -04:00
logger.json move badgevault to clone each hour instead 2025-10-05 14:07:05 -04:00
package.json 2.0.2 fixes issues with stdout 2025-10-01 04:55:40 -04:00
README.md alot more refactoring 2025-11-17 13:24:14 -05:00
tsconfig.json add index route info, make it fetch per hour instead of every user, add health route, update to latest biome config aswell as logger 2025-06-04 15:47:51 -04:00

Badge API

Discord badge aggregation API built with Bun and Redis.

Live: https://badges.equicord.org

Setup

bun install
cp .env.example .env
# Edit .env with REDIS_URL
bun run start

Requirements: Bun v1.2.9+, Redis

API

GET /:userId?services=vencord,equicord&separated=true

Query Parameters

  • services - Comma/space-separated list (default: all)
  • exclude - Exclude services
  • cache - Use cache (default: true)
  • separated - Group by service (default: false)
  • capitalize - Capitalize service names (with separated)

Supported Services

Vencord, Equicord, Nekocord, ReviewDB, Aero, Aliucord, Ra1ncord, Velocity, BadgeVault, Enmity, Discord, Replugged

Admin API

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-metrics

Configuration

Required:

  • REDIS_URL - Redis connection string

Optional:

  • REDIS_TTL - Cache TTL in seconds (default: 3600)
  • DISCORD_TOKEN - For Discord badges
  • ADMIN_API_KEY - Admin endpoints auth
  • BLOCKLIST_ENABLED - Enable blocklist (default: true)

See .env.example for all options.

Development

bun run lint        # Check code
bun run lint:fix    # Auto-fix issues
bunx tsc --noEmit   # Type check
docker compose up   # Run with Docker

License

BSD-3-Clause