Skip to content

Deployment Guide

bisug edited this page May 14, 2026 · 2 revisions

◈ Deployment Guide

Deploying WordSeek to a production environment is straightforward. This guide covers popular cloud platforms and Docker-based deployments.


◈ Cloud Platforms

▪ Railway (Recommended)

Railway is the easiest platform for WordSeek as it handles Bun, Postgres, and Redis natively.

  1. Click the Deploy to Railway button in the README.
  2. Fill in your BOT_TOKEN and ADMIN_USERS.
  3. Railway will automatically provision the database and cache.

▪ Render

  1. Create a Web Service on Render.
  2. Link your GitHub repository.
  3. Use the following build and start commands:
    • Build Command: bun install
    • Start Command: bun run start
  4. Set WEB_SERVICE=true in environment variables to enable health checks.
  5. Create separate PostgreSQL and Redis instances on Render and link their URLs.

▪ Heroku

  1. Use the Heroku Button or the Heroku CLI.
  2. Add the Heroku Postgres and Heroku Data for Redis add-ons.
  3. The Procfile is already included in the repository.

◈ Self-Hosting (VPS/Docker)

▪ Using Docker Compose

A docker-compose.yml file is provided for quick setup:

  1. Edit the env_file or set variables directly in docker-compose.yml.
  2. Run the stack:
    docker-compose up -d

▪ Using PM2 (Systemd alternative)

If you are running on a raw VPS without Docker:

  1. Install PM2: npm install pm2 -g
  2. Start the app:
    pm2 start src/index.ts --interpreter bun --name wordseek

◈ Environment Optimization

NODE_ENV: Always set to production for better performance and logging.
TIME_ZONE: Set this to your local timezone (e.g., Asia/Kolkata) to ensure daily challenges reset at the correct time for your users.
Health Checks: If using a platform that requires a port to be open (like Render), set WEB_SERVICE=true.


Next: Learn how to manage your bot and groups in Admin & Moderation.

Clone this wiki locally