AT-bot (Asha's Translation Bot) is a Discord bot auto-hosting solution that provides real-time message translation capabilities using both DeepL and Google Translate APIs. Contrary to other 'black box' bots, i here focus on transparency and userdata control.
The bot uses a hybrid translation system to ensure maximum reliability:
- DeepL Priority: Leverages the DeepL API for superior contextual accuracy.
- Google Translate Fallback: If DeepL limits are reached or unconfigured, the bot automatically switches to Google Translate to maintain service continuity.
- Multi-Config Engine: Manage multiple bot instances or profiles directly through the built-in TUI at startup. (using Curses and Textuals)
- Reaction-Based Translation: React with a flag emoji (e.g., 🇫🇷, 🇺🇸, 🇯🇵) to receive an instant translation via DM.
- Slash Command /trsend: Send translated messages directly into a channel with full language autocompletion.
- [HOST] Integrated TUI (Terminal User Interface): An interactive setup wizard for first-time launches (no manual .env or .json editing required).
- [HOST] Advanced Logging: Comprehensive traceability for debugging and monitoring API calls.
Before installing ATbot, make sure you have:
- Windows operating system
- Python 3.8 or higher installed (Tested on Python 3.10.11 & 3.9.25)
- A Discord bot token (How to get one)
- A DeepL API key (How to get one)
-
Download: Grab the latest release.
-
Launch: Run
Start bot.bat(windows) orStartBot.shdepending on your system -
Setup Wizard: Follow the terminal prompts to:
- Name your configuration.
- Link your Discord Token.
- Add your DeepL API key (optional but recommended).
-
Technical Note: On the first run, the script verifies the environment and installs necessary dependencies. If the process hangs, delete the Firstboot.flag file and restart.
- Webhook Mirroring: Linking two channels for automatic bi-directional translation using Webhooks.
- Translation Cache: Implementing a SQLite database to cache frequent translations and save API quotas.
- Cross-Platform Support: Official Linux port (Dockerization planned someday, and done).
- Context Menu Integration: Adding a "Translate" option via the Discord right-click menu (Apps).
If you encounter issues:
- Check if all prerequisites are installed
- Verify your bot token and DeepL API key are valid
- Ensure your bot has proper permissions in Discord
- Check the logs folder for detailed error messages
The bot automatically creates log files in the logs folder with timestamps. These can be useful for troubleshooting issues.
If you encounter any problems and checked the Basic troubleshooting:
- Check the GitHub Issues page
- Create a new issue with detailed information about your problem
If you have an idea not yet in the roadmap or find a bug:
- Check GitHub Issues.
- Open a new Issue with detailed information about your proposal.
Created and maintained by Asha Geyon (Natpol50) 🦊
This project is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0)
see the LICENSE file for details.
This means you are free to:
- Share: Copy and redistribute the material in any medium or format
- Adapt: Remix, transform, and build upon the material for any purpose, even commercially
Under these terms:
- Attribution: You must give appropriate credit, provide a link to the license, and indicate if changes were made
- ShareAlike: If you modify the material, you must distribute your contributions under the same license as the original