Skip to content

Deployment Overview

RushChat deployment solutions overview.

Deployment Solutions Overview

Backend Deployment

  • Railway - Recommended, simple and easy
  • Fly.io - Supports Rust, good performance
  • Hetzner - Self-hosted, cost-effective
  • AWS/GCP/Azure - Enterprise-grade, feature-rich

Frontend Deployment

  • Vercel - Recommended, auto deployment
  • Netlify - Similar to Vercel
  • Cloudflare Pages - Global CDN
  • GitHub Pages - Free static hosting

Database

  • Railway MySQL - Deploy with backend
  • PlanetScale - Serverless MySQL
  • Supabase - PostgreSQL (requires migration)
  • Self-hosted MySQL - Full control

Deployment Architecture

┌─────────────────┐
│  Vercel (Frontend)│
│  React App      │
└────────┬────────┘
         │ HTTPS
┌────────▼────────┐
│  Railway (Backend)│
│  Rust Server    │
└────────┬────────┘
┌────────▼────────┐
│  Railway MySQL  │
│  Database       │
└─────────────────┘

Deployment Steps

1. Prepare Environment

  • Ensure code is pushed to GitHub
  • Prepare environment variables
  • Prepare database

2. Deploy Backend

  • Create Railway project
  • Configure environment variables
  • Deploy Rust service

3. Deploy Frontend

  • Create Vercel project
  • Configure environment variables
  • Deploy React application

4. Configure Domain

  • Configure backend domain
  • Configure frontend domain
  • Update CORS settings

Environment Variables

Backend Environment Variables

DB_HOST=...
DB_PORT=3306
DB_USER=...
DB_PASSWORD=...
DB_NAME=rushchat
PORT=5001
NODE_ENV=production
CLIENT_URL=https://your-frontend.vercel.app
MAIN_DOMAIN=your-domain.com

Frontend Environment Variables

REACT_APP_API_URL=https://your-backend.railway.app
REACT_APP_SOCKET_URL=https://your-backend.railway.app