Skip to content

Source code for GitHubber, a discord app enabling use of the github API directly within discord

Notifications You must be signed in to change notification settings

idefasoft/GitHubber

Repository files navigation

GitHubber

A Discord App for interacting with GitHub repositories, users, and various GitHub entities directly from your Discord server.

Features

You can try the bot directly by using its official public instance: Add App URL

The bot's public commands can be viewed using the /help command:
Help Command

Setup

Prerequisites

  • Python 3.12+
  • Discord Bot Token
  • GitHub Personal Access Token(s)

Installation

  1. Clone the repository

    git clone https://github.com/IdefaSoft/GitHubber.git
    cd GitHubber
  2. Install dependencies

    pip install -r requirements.txt
  3. Configure the bot

    Edit config.json:

    {
        "bot_token": "YOUR_DISCORD_BOT_TOKEN",
        "github_tokens": [
            "YOUR_GITHUB_TOKEN_1",
            "YOUR_GITHUB_TOKEN_2"
        ],
        "webhook_url": "YOUR_WEBHOOK_URL_FOR_LOGS",
        "support_server": "https://discord.gg/your-invite",
        "guilds_channel": null,
        "admins": [YOUR_USER_ID],
        "admin_guilds": [YOUR_GUILD_ID]
    }
  4. Run the bot

    python githubber.py

Configuration Details

  • bot_token: Your Discord bot token from the Discord Developer Portal
  • github_tokens: List of GitHub Personal Access Tokens for API requests (Note that it's only useful to use multiple GitHub access tokens if they come from different accounts; otherwise, the rate limit will be the same. In fact, since its launch, the bot has never needed to use the second token.)
  • webhook_url: Discord webhook URL for logging (optional)
  • support_server: Discord invite link for your support server
  • guilds_channel: Channel ID for guild join/leave notifications
  • admins: List of Discord user IDs with admin permissions
  • admin_guilds: List of guild IDs where admin commands are available

Usage

Use /help to see all available commands. Commands are organized into groups:

  • /user - User-related commands
  • /repository - Repository commands
  • /info - Information about specific entities
  • /search - Search GitHub content

Rate Limiting

The bot includes built-in rate limiting:

  • General commands: 100 per hour per user
  • Search commands: 20 per hour per user
  • Button interactions: 500 per hour per user

Admin Commands

Admins can use /admin commands to:

  • View GitHub API rate limits
  • Blacklist/unblacklist users and servers

About

Source code for GitHubber, a discord app enabling use of the github API directly within discord

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages