Teletype Games BBS is a Telnet, Synchronet-style bulletin board: messaging, chat, news, guides and software in one retro hub.
Live at
games.teletype.hu:2323
A Ruby app on the rubbs gem, our in-house BBS framework — it provides the ANSI interface, menubar, stacked modal windows, Telnet server and xterm mouse support. The bbs-server repo holds only the Teletype-specific parts: service wiring, window definitions, formatters.
On connect the user gives a name (blank = Anonymous), then the full-screen shell opens.
Community
data/boards/. New posts use a multi-line TextArea, max 1000 chars.BBS_SYSOPS.Content
Technical
.ans / .ansi / .asc / .nfo / .txt files where BBS_DESKTOP_ART points. CP437 art is auto-decoded and SAUCE metadata stripped. A directory means a random file per session.data/, a Docker volume, so they survive restarts.| Menu | Items |
|---|---|
| File | Bulletin · System Info · Exit |
| Messages | Boards… · New Post… |
| Files | Blog Posts · HowTo Guides · Game Catalog |
| Users | Online · Last Callers · Profile… |
| Chat | Open chat |
| Sysop | Console (sysops only) |
| Help | About · Keys |
| Key | Action |
|---|---|
Alt+letter |
Open the matching top menu |
F10 |
Open the leftmost menu |
F1 |
Help |
F2 |
Message Boards |
F3 |
Quick post |
F4 |
Chat |
Tab / Shift-Tab |
Move focus inside a window |
Enter |
Activate the focused button / submit |
Esc |
Close the top window or menu |
Copy env-example to .env:
| Variable | Default | Description |
|---|---|---|
BBS_PORT |
2323 |
TCP port. |
BBS_SYSOPS |
empty | Comma-separated sysop usernames. |
WEBAPP_WIKIJS_TOKEN |
— | Bearer token for the Grav wiki API. |
BOARDS_PATH |
data/boards |
Per-board CSV files. |
MESSAGES_PATH |
data/messages.dat |
Legacy single-board file; migrated into General on first run. |
LAST_CALLERS_PATH |
data/last_callers.csv |
Login log. |
PROFILE_PATH |
data/profiles.csv |
User profiles. |
BBS_DESKTOP_ART |
data/art/teletype.ansi |
One ANSI file, or a directory (random per session). |
docker compose up --build # or, with Ruby 3.x: bundle install && ruby bbs.rb
telnet localhost 2323
bbs.rb entry point — service wiring + Application definition
lib/
domain/
repository/ online users, boards, wiki, catalog, last callers, profiles
service/ online, board, wiki, games, chat, last callers, profile
model/ value objects (MessageModel, GameModel, …)
bbs/ui/ per-window builders and formatters
data/
boards/<id>.csv per-board messages (auto-created)
last_callers.csv login log
profiles.csv user profiles
https://git.teletypegames.org/bbs/bbs-server