Files
twitchChatOverlayServer/DOCUMENTATION.md

1.7 KiB

OpenChat Overlay Documentation

Overview

OpenChat Overlay is a lightweight, open-source Twitch chat overlay solution designed to be hosted on minimal hardware (like a Proxmox LXC container). It provides a user-friendly dashboard for customization and a highly optimized, client-side rendered overlay URL.

Getting Started

Prerequisites

  • Node.js (v18+)
  • Supabase Account
  • Twitch Developer Application (Client ID & Secret)

Installation

  1. Clone the repository.
  2. Install dependencies:
    npm install
    
  3. Configure environment variables in .env.local:
    NEXT_PUBLIC_SUPABASE_URL=...
    NEXT_PUBLIC_SUPABASE_ANON_KEY=...
    NEXTAUTH_SECRET=...
    TWITCH_CLIENT_ID=...
    TWITCH_CLIENT_SECRET=...
    
  4. Run the development server:
    npm run dev
    

Architecture Notes

  • The application uses Next.js App Router.
  • Dashboard: Located in src/app/(dashboard). Protected by authentication.
  • Overlay: Located in src/app/overlay/[token]. Publicly accessible but requires a valid token. Renders with a transparent background.

Deployment

Infrastructure Overview

  • Development: Conducted on local desktop (CachyOS).
  • Version Control: Synced to gitea.ramforth.net under the RamTech organization.
  • Production Host: Standalone Proxmox LXC container or VM.
  • Service URL: Production will NOT be hosted on localhost. All external callbacks (Twitch Auth) must point to the production domain/IP.

Deployment Workflow

  1. Push changes from local development machine to Gitea.
  2. Pull changes on the production LXC/VM.
  3. Build and run using Docker or as a systemd service.