Skip to content

Getting Started Overview

This section provides everything you need to get WaddleBot up and running in your environment. Whether you're setting up a development environment or deploying to production, we have guides to help you succeed.

Choose Your Path

Perfect for trying out WaddleBot quickly:

  • Time: 10-15 minutes
  • Requirements: Docker and Docker Compose
  • Platforms: Single platform (Discord, Twitch, or Slack)
  • Use Case: Development, testing, small communities

Next: Follow our Quick Start Guide

For production-ready deployments:

  • Time: 2-4 hours
  • Requirements: Kubernetes cluster, PostgreSQL, Redis
  • Platforms: Multi-platform support
  • Use Case: Large communities, high availability

Next: Read the Deployment Guide

For contributors and module developers:

  • Time: 30-60 minutes
  • Requirements: Python 3.12, development tools
  • Platforms: Local development environment
  • Use Case: Contributing code, building modules

Next: Check Contributing Guidelines

Prerequisites

System Requirements

Minimum Requirements: - Python 3.12 or later - Docker and Docker Compose - 4GB RAM, 2 CPU cores - 10GB available disk space

Recommended: - 8GB RAM, 4 CPU cores - SSD storage - Linux or macOS (Windows with WSL2)

Minimum Requirements: - Kubernetes cluster (3 nodes) - PostgreSQL 14+ with read replicas - Redis 6+ cluster - 16GB RAM total, 8 CPU cores - 100GB available storage

Recommended: - High-availability Kubernetes setup - Managed PostgreSQL and Redis services - Load balancer with SSL termination - Monitoring and logging infrastructure

Platform Prerequisites

Before setting up WaddleBot, you'll need to create applications on the platforms you want to integrate:

Required: - Discord Developer Application - Bot token with appropriate permissions - Server with admin permissions for testing

Permissions Needed: - Send Messages - Read Message History
- Use Slash Commands - Manage Roles (optional)

Setup Guide: Discord Platform Setup

Required: - Twitch Developer Application - Client ID and Client Secret - EventSub webhook endpoint (HTTPS required)

Scopes Needed: - channel:read:subscriptions - bits:read - channel:read:redemptions - moderator:read:followers

Setup Guide: Twitch Platform Setup

Required: - Slack App in your workspace - Bot User OAuth Token - Event subscriptions endpoint

Permissions Needed: - chat:write - channels:read - users:read - reactions:write

Setup Guide: Slack Platform Setup

Architecture Decision Tree

Use this flowchart to determine the best setup for your needs:

flowchart TD
    A[Starting WaddleBot Setup] --> B{What's your primary goal?}

    B -->|Try WaddleBot features| C[Development/Testing]
    B -->|Run for community| D[Production Use]
    B -->|Build modules| E[Module Development]

    C --> F{How many platforms?}
    F -->|Just one| G[Quick Start with Docker Compose]
    F -->|Multiple| H[Local Kubernetes with Kind]

    D --> I{Community size?}
    I -->|< 1000 members| J[Single Node Kubernetes]
    I -->|> 1000 members| K[Multi-Node Production Cluster]

    E --> L[Development Environment Setup]

    G --> M[Follow Quick Start Guide]
    H --> N[Local Multi-Platform Setup]
    J --> O[Production Deployment Guide]
    K --> P[High Availability Setup]
    L --> Q[Contributing Guidelines]

Next Steps

1. Choose Your Setup Path

Based on your needs, pick the appropriate setup guide:

2. Platform Configuration

Set up your platform integrations:

3. Core Configuration

Configure the core system components:

4. Feature Modules

Enable the features your community needs:

5. Administration

Set up community management:

Common Setup Issues

HTTPS Requirement

Most platforms (especially Twitch) require HTTPS endpoints for webhooks. For development, consider using ngrok or similar tools to expose your local server.

Environment Variables

WaddleBot uses environment variables extensively. Consider using a .env file or secret management system to organize your configuration.

Database Migrations

Each module manages its own database tables. Ensure your PostgreSQL user has CREATE TABLE permissions for automatic migrations.

Getting Help