Rust Commit Tracker
A reliable Discord bot that monitors Facepunch's Rust game commits and sends real-time notifications with SQLite persistence.
Features
- ๐ Real-time monitoring - Tracks new commits from Facepunch's Rust repository
- ๐ฌ Discord integration - Rich embed notifications with commit details
- ๐พ SQLite persistence - Prevents duplicate notifications across restarts
- โ๏ธ Auto-configuration - Creates config file on first run
- ๐งน Automatic cleanup - Maintains database size with configurable retention
- ๐ Zero dependencies - Standalone executable with no runtime requirements
Installation
Option 1: Download Pre-built Binary (Recommended)
-
Download the latest release for your operating system:
- Go to Releases
- Download the appropriate archive for your OS:
rust-commit-tracker-vX.X.X-x86_64-pc-windows-gnu.zip
(Windows)rust-commit-tracker-vX.X.X-x86_64-unknown-linux-gnu.tar.gz
(Linux)rust-commit-tracker-vX.X.X-x86_64-apple-darwin.tar.gz
(macOS)
-
Extract and run:
# Extract the archive # On first run, it will create config.toml
Option 2: Build from Source
Requirements: Rust 1.70+
Option 3: Install via Cargo
Configuration
On first run, the application creates config.toml
with sensible defaults. Only the Discord webhook URL needs to be set - everything else works out of the box.
Required: Discord Webhook
Edit config.toml
and set your Discord webhook URL:
[]
= "YOUR_DISCORD_WEBHOOK_URL" # โ Required: Replace with actual webhook
Optional: Customize Defaults
All other settings have working defaults but can be customized:
[]
= "Rust Commit Tracker" # Bot display name
= "https://i.imgur.com/on47Qk9.png" # Bot avatar
[]
= "https://commits.facepunch.com/?format=json" # API endpoint
= 50 # Check interval in seconds
[]
= "#CD412B" # Discord embed color (Rust orange)
= "https://i.imgur.com/on47Qk9.png" # Footer icon
[]
= "sqlite:commits.db" # Database file location
= 1000 # Number of commits to retain
Getting a Discord Webhook URL
- Open your Discord server settings
- Go to Integrations โ Webhooks
- Click New Webhook
- Choose the channel and copy the webhook URL
- Paste it into your
config.toml
file
Usage
After configuration, simply run the executable:
The bot will:
- Start monitoring Facepunch's commit feed
- Send notifications for new commits to your Discord channel
- Maintain a local database to prevent duplicate notifications
- Automatically resume from the last processed commit after restarts
Contributing
- Fork the repository
- Create a feature branch:
git checkout -b feature-name
- Follow Conventional Commits format
- Submit a pull request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
- ๐ Issues: GitHub Issues
- ๐ Documentation: GitHub Repository
- ๐ฆ Crate: crates.io