Skip to content

Gratonite-Labs/api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gratonite API

Project Status Docs

Backend API for Gratonite — a privacy-first, open-source alternative to Discord.

What This Covers

  • 109 database schemas with Drizzle ORM + PostgreSQL
  • 91 API route modules on Express + TypeScript
  • Real-time messaging via Socket.IO
  • Voice/video via LiveKit integration
  • End-to-end encryption key exchange (ECDH P-256 + AES-GCM-256)
  • Instance federation with Ed25519 HTTP Signatures
  • Guild management, roles, permissions, channels, threads
  • DMs, group DMs, friend system, blocking
  • Moderation: automod, word filters, timeouts, temp bans, ban appeals, raid protection
  • Gamification: XP, leveling, FAME system, achievements, leaderboards
  • Economy: virtual currency, cosmetics shop, marketplace, auctions
  • OAuth2 authorization flow, webhooks, bot framework, slash commands
  • Stripe payments, referrals
  • GDPR data export, account deletion
  • Scheduled messages, drafts, bookmarks, global search
  • Web push notifications, email notifications

Tech Stack

Component Technology
Runtime Node.js 22, TypeScript
Framework Express 5
Database PostgreSQL 16, Drizzle ORM
Cache Redis 7
Realtime Socket.IO
Voice LiveKit
Auth JWT (access + refresh), Argon2id password hashing, TOTP MFA
Security Helmet.js, Zod validation, rate limiting, CORS, HTTP Signatures
Metrics Prometheus
Email Nodemailer

Docker Image

docker pull ghcr.io/coodayea/gratonite-api:latest

Canonical Source of Truth

All source code lives in the main monorepo:

If anything in this repo conflicts with the main repo, the main repo is authoritative.

Related Repositories

About

Backend API for auth, messaging, guilds, voice, moderation, and realtime features

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors