• My BBS Architecture

    From Derek Bird@1:103/705 to All on Fri Aug 28 19:32:04 2026
    =============================================================================
    ADVENTURE BBS - SYSTEM ARCHITECTURE =============================================================================

    [OVERVIEW]
    Adventure BBS is running containerized on macOS (OrbStack), bridging retro
    BBS culture with modern web technologies: secure Cloudflare TLS, browser-
    based WebSocket terminals, DOS door virtualization, and native .NET 8 MUDs.

    [INGRESS, HTTPS & WEBSOCKETS]
    - Cloudflare DNS & Proxy: Handles TLS and incoming HTTPS/WSS on port 443.
    - Caddy Gateway: Autonomous reverse-proxy handling Cloudflare DNS-01 SSL
    challenges and routing subpaths on the shared 'web-gateway' Docker network.
    - WebSocket Ingress (/bbs/ws): Nginx ('code-app') handles WebSocket upgrade
    and bridges browser traffic directly into Synchronet's WS port (1123).

    [NETWORK TOPOLOGY]
    Internet / Browser
    │ (HTTPS / WSS on 443)

    [ Cloudflare + Caddy Gateway ]
    │ (Docker Network: web-gateway)
    ├─────────────────────────────────────────┐
    ▼ ▼
    [ Nginx: code-app ] [ sbbs: Synchronet ]
    Web & WebSocket Proxy Nodes, Mail, Doors, IRC
    fTelnet & fTelnet-Modern (Telnet 23 / SSH 22 / WS 1123)
    │ (WebSocket 1123) │
    └───────────────────────────────────────┤
    │ (RLogin 513)
    ├────────────────────────┐
    ▼ ▼
    [door-server ] [ usurper-game ]
    DOSEMU / DOS Doors Native .NET 8 MUD
    LORD, OOII, TW2002 Usurper Reborn

    [DOCKER STACK BREAKDOWN]
    1. code-app (nginx:alpine)
    - Serves web assets and proxies /bbs/ws WebSocket stream to Synchronet.
    2. sbbs (bbsio/synchronet:nightly)
    - Synchronet v3.20+ core running message networks (DOVE-Net/QNET), file
    bases, multi-node terminal server, and external door gateways.
    3. door-server (custom DOSEMU / Node.js)
    - Dedicated DOS door virtualization container listening on port 513.
    - Runs 16-bit real-mode DOS games in isolated sandboxes with drop files.
    4. usurper-game (custom .NET 8.0 SDK / Runtime)
    - Native 64-bit Linux multi-user MUD daemon. Runs 24/7 background world
    sim (roaming NPCs, royal court, economy) with shared SQLite database.
    - Integrated via BSD RLogin: transparently passes the user's BBS handle,
    auto-provisioning characters with zero login/password prompts.

    [DOORS & ONLINE GAMES]
    - Usurper Reborn (Native .NET 8 MUD / Persistent 24/7 world)
    - Legend of the Red Dragon (L.O.R.D. classic DOS v4.07)
    - Operation Overkill II (OOII post-apocalyptic roguelike)
    - TradeWars 2002 (Classic space exploration & trading)
    - Synchronet Minesweeper, BullsEye! Bulletins, Avatar Chooser

    [WEB TERMINAL ACCESS]
    - Classic fTelnet: https://code.ourbirdhouse.ca/bbs/
    - Modern Gothic Client: https://code.ourbirdhouse.ca/bbs/test.html
    (fTelnet-Modern v2.0, CP437 80x25, CRT FX scanlines, fullscreen)

    I am still trying to figure out what ftelnet I prefer... comparing the two now.

    If you are trying to get your stuff working and need help, hit me up.

    Derek ============================================================================

    ---
    ■ Synchronet ■ The Adventure BBS - Docker and Cloudflare magic
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)