                               DOOR HUB 0.1.0
                 Shared door games for BBSes, over SSH tunnels
          Copyright (C) 2026 Michael Slater (Heisenberg). GNU GPL v2+.

WHAT IT IS
----------
Door Hub lets several BBSes share one set of door games. Players on every
member BBS play in the same games, against each other, as if the games ran
on their own board. It works the same way as DoorParty:

  1. The member BBS runs a small program, the CONNECTOR. When a caller
     picks a hub game, the BBS opens an RLogin connection to the connector
     on its own machine.
  2. The connector adds the BBS's system tag to the caller's name, for
     example [KAL]Heisenberg, and sends the connection to the hub through an
     encrypted SSH tunnel. Each member BBS has its own hub account.
  3. The HUB checks the account and the tag, sets up the player, and starts
     the game the BBS asked for (or shows its game menu) on the hub's own
     Synchronet BBS. When the game ends the player is back on their BBS.

Players never log on to the hub themselves and never see a password.

WHO NEEDS WHAT
--------------
  Sysops joining a hub   need only doorhub-connector and doorhub.js.
                         Read SYSOP.TXT.
  Running your own hub   need doorhub, a Synchronet BBS with the games
                         installed, and an internet address members can
                         reach. Read HUB.TXT.

FILES
-----
  doorhub-connector(.exe)  the connector, for member BBSes
  doorhub(.exe)            the hub server and its admin commands
  doorhub.js               Synchronet script that sends a caller to the hub
  doorhub-connector.ini    example connector settings (the hub gives you
                           a filled-in copy)
  doorhub.service          systemd unit for a Linux hub
  doorhub-connector.service  systemd unit for a Linux connector
  SYSOP.TXT                joining a hub
  HUB.TXT                  running a hub
  WHATSNEW.TXT             changes
  COPYING                  GNU General Public License version 2
  FILE_ID.DIZ              file description for BBS file areas

The Linux packages are for 64-bit PCs (x64) and for 64-bit ARM (arm64,
such as a Raspberry Pi 4 or 5 with a 64-bit system). The Windows package
is for 64-bit Windows 10, 11 and Server 2016 or later. The source code is
in doorhub-0.1.0-source.tar.gz.

QUICK START: JOINING A HUB
--------------------------
  1. Ask the hub's sysop for an account. They send you a filled-in
     doorhub-connector.ini.
  2. Put doorhub-connector and the ini in a folder on your BBS machine
     (for example /sbbs/doorhub or C:\sbbs\doorhub) and start it.
  3. Copy doorhub.js to your Synchronet mods folder and add a door with
     the command line  ?doorhub.js   (the hub menu) or  ?doorhub.js lord
     (straight into one game).
SYSOP.TXT has the full steps, including running the connector as a
service and setting up Mystic and other BBS programs.

QUICK START: RUNNING A HUB
--------------------------
  doorhub init
  doorhub set public_host hub.example.com
  doorhub door add lord LORD "Legend of the Red Dragon"
  doorhub bbs add XYZ "Their BBS Name"
  doorhub serve
HUB.TXT has the full steps for Linux and Windows.

THE KALGOORLIE DOOR HUB
-----------------------
The Kalgoorlie Retro BBS runs a Door Hub with Legend of the Red Dragon,
Ember Reach, The Broken Seal and The Long Wake. Sysops who would like to
join can email slaterm@theiguru.au for an account.

  Website        https://retro.theiguru.au/doorhub/
  Documentation  https://retro.theiguru.au/docs/doorhub/start
  BBS            telnet bbs.theiguru.au

LICENCE
-------
Door Hub is free software: you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation, either version 2 of the License, or (at your option)
any later version. It comes with NO WARRANTY. See COPYING.

Door Hub is not connected with DoorParty. It uses the Go programming
language and the golang.org/x/crypto and golang.org/x/sys libraries
(BSD licence, Copyright The Go Authors).
