2026-01-08 17:15:28 +05:30
2026-01-08 17:15:28 +05:30
2025-12-20 11:49:50 +01:00

Aurora

A comprehensive, feature-rich Discord RPG bot built with modern technologies.

Version Bun Discord.js Drizzle ORM PostgreSQL

Aurora is a powerful Discord bot designed to facilitate RPG-like elements within a Discord server. It features a robust economy, class system, inventory management, quests, and more, all built on top of a high-performance stack using Bun and Drizzle ORM.

Features

  • Class System: Users can join different classes.
  • Economy: Complete economy system with balance, transactions, and daily rewards.
  • Inventory & Items: sophisticated item system with rarities, types (Material, Consumable, etc.), and inventory management.
  • Leveling: XP-based leveling system to track user activity and progress.
  • Quests: Quest system with requirements and rewards.
  • Trading: Secure trading system between users.
  • Lootdrops: Random loot drops in channels to engage users.
  • Admin Tools: Administrative commands for server management.

🛠️ Tech Stack

🚀 Getting Started

Prerequisites

  • Bun (latest version)
  • Docker & Docker Compose

Installation

  1. Clone the repository

    git clone <repository-url>
    cd aurora
    
  2. Install dependencies

    bun install
    
  3. Environment Setup Copy the example environment file and configure it:

    cp .env.example .env
    

    Edit .env with your Discord bot token, Client ID, and database credentials.

    Note

    : The DATABASE_URL in .env.example is pre-configured for Docker.

  4. Start the Database Run the database service using Docker Compose:

    docker compose up -d db
    
  5. Run Migrations

    bun run migrate
    

    OR

    bun run db:push
    

Running the Bot

Development Mode (with hot reload):

bun run dev

Production Mode: Build and run with Docker (recommended):

docker compose up -d app

📜 Scripts

  • bun run dev: Start the bot in watch mode.
  • bun run generate: Generate Drizzle migrations.
  • bun run migrate: Apply migrations (via Docker).
  • bun run db:push: Push, schema to DB (via Docker).
  • bun run db:studio: Open Drizzle Studio to inspect the database.
  • bun test: Run tests.

📂 Project Structure

├── src
│   ├── commands    # Slash commands
│   ├── events      # Discord event handlers
│   ├── modules     # Feature modules (Economy, Inventory, etc.)
│   ├── db          # Database schema and connection
│   └── lib         # Shared utilities
├── drizzle         # Drizzle migration files
├── config          # Configuration files
└── scripts         # Utility scripts

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📄 License

This project is licensed under the MIT License.

Description
No description provided
Readme 4.9 MiB
Languages
TypeScript 98.5%
CSS 0.9%
Shell 0.5%