Skip to content

Latest commit

 

History

44 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Platform-API

Backend service for community voting rounds, telemetry analysis, task grab-box pipelines, and Discord integrations. Built with AdonisJS v6, PostgreSQL, and Redis.

Getting Started

# Install dependencies
npm install

# Setup environment
cp .env.example .env

# Run database migrations
node ace migration:run

# Start development server
npm run dev

# Run tests
npm test

Docker

# Build image
docker build -t platform-api .

# Run container
docker run --rm --env-file .env -p 3333:3333 platform-api

Critical Notes

  • Internal Logic Dependency: @platform/internal-logic is installed from git at a pinned ref in package.json. npm install requires git on PATH. When updating domain logic, bump the #v... tag and run npm install.
  • Database Migrations in Production: Run migrations before starting production containers:
    docker run --rm --env-file .env platform-api node ace migration:run --force
  • Deployment Repository: Production infrastructure and orchestration configurations live in Platform-Deployment. CI/CD builds and publishes images to GitHub Container Registry (ghcr.io/seraphinteractive/platform-api).

Core Environment Variables

  • PORT: HTTP port (default: 3333)
  • HOST: Server host (default: localhost)
  • DB_HOST, DB_PORT, DB_USER, DB_PASSWORD, DB_DATABASE: PostgreSQL connection
  • REDIS_HOST, REDIS_PORT, REDIS_PASSWORD: Redis connection
  • DISCORD_CLIENT_ID, DISCORD_CLIENT_SECRET, DISCORD_REDIRECT_URI: Discord OAuth credentials
  • DISCORD_WEBHOOK_URL: Public announcements Discord webhook
  • DISCORD_SUPERVISOR_WEBHOOK_URL: Staff telemetry and review alerts webhook
  • ADMIN_DISCORD_IDS: Comma-separated list of administrative Discord user IDs

About

Backend for the voting platform, written with Adonis.js

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages