Deploy babel-discord-translator
A self-hosted Discord translation for server installs and user installs.
babel-discord-translator
Just deployed
/app/data
Deploy and Host babel-discord-translator on Railway
babel-discord-translator, also known as Babel, is a self-hosted Discord translation monorepo with two app profiles:
- Babel Guild for server/guild installs, public slash-command workflows, server budgets, and server glossaries.
- Babel Pocket for user installs, private right-click translations, user-scoped access, and personal usage budgets.
Both apps share the same Railway template, dashboard, SQLite persistence, provider setup, metrics, and operational foundations. Choose which app to deploy by setting BABEL_APP to guild or pocket.
About Hosting babel-discord-translator
Hosting Babel on Railway gives you your own private Discord translation app instance. You provide the Discord token, dashboard password, Railway hosting, and AI provider credentials.
Set BABEL_APP=guild if you want the server-install product for Discord communities. Set BABEL_APP=pocket if you want the user-install product for individuals, trusted friends, or private workflows.
Babel stores configuration, usage, budgets, language preferences, sessions, and app-specific access data in SQLite, so mount a persistent Railway volume at /app/data. After deployment, open the dashboard, complete the setup wizard, configure Vertex AI or an OpenAI-compatible provider, then register the matching Discord commands. Babel does not require privileged Discord intents and keeps translation control in your own deployment.
Common Use Cases
- Self-host private translations: Translate Discord messages without paying for a hosted bot subscription.
- Server community translation: Use Babel Guild for server installs,
/translate, server budgets, and server glossaries. - Personal or trusted-group translation: Use Babel Pocket for user installs and private ephemeral translations.
- Usage tracking & customization: Track AI token usage, set budgets, customize prompts, and configure provider settings from the dashboard.
Dependencies for babel-discord-translator Hosting
- A Discord application and bot token
- A Railway service with a persistent volume mounted at
/app/data - A dashboard password for the admin UI
- A Vertex AI or OpenAI-compatible translation provider account
- Discord command registration after deployment
Deployment Dependencies
Required Railway Environment Variables:
BABEL_APP=guild_or_pocket
DISCORD_TOKEN=your_discord_bot_token
DASHBOARD_PASSWORD=replace_with_a_strong_password
NODE_ENV=production
BABEL_DB_PATH=/app/data/babel.sqlite
Set BABEL_APP=guild for Babel Guild or BABEL_APP=pocket for Babel Pocket.
Recommended Railway Environment Variables:
DASHBOARD_HOST=0.0.0.0
RAILWAY_RUN_UID=0
Recommended Volume Mount:
/app/data
Useful Links:
- Discord Developer Portal
- Discord OAuth2 Bot Invite Format
- Google Vertex AI
- OpenAI API
- Babel GitHub Repository
Implementation Details
After the Railway deployment is live, register the Discord commands that match your selected app profile.
For Babel Guild:
DISCORD_APP_ID=your_app_id DISCORD_BOT_TOKEN=your_token npm run register:guild
Babel Guild registers the Babel message context menu plus /translate, /setlang, /mylang, and /help.
For Babel Pocket:
DISCORD_APP_ID=your_app_id DISCORD_BOT_TOKEN=your_token npm run register:pocket
Babel Pocket registers the Babel Pocket message context menu plus /setlang, /mylang, and /help. It does not register the public /translate command.
The dashboard is served from the Railway public domain. Log in with DASHBOARD_PASSWORD, complete the setup wizard, configure your translation provider, and check /livez or /readyz for service health.
Why Deploy babel-discord-translator on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Babel on Railway, you get a self-hosted Discord translation app with persistent storage, health checks, a web dashboard, and bring-your-own provider support in one template.
Template Content
babel-discord-translator
0xH4KU/babel-discord-translatorBABEL_APP
Set to guild for Babel Guild or pocket for Babel Pocket
DISCORD_TOKEN
Your Discord Bot Token
DASHBOARD_PASSWORD
A very strong random password
