1.7 KiB
1.7 KiB
Teletype BBS Server
A modern, Go-based Bulletin Board System (BBS) server designed for Telnet access. It features community tools, wiki integration, and a game catalog, all rendered with retro-style ANSI graphics.
Quick Start
Prerequisites
Installation
-
Clone the repository:
git clone <repository-url> cd bbs-server -
Install dependencies:
go mod download -
Set up environment variables (optional but recommended for Wiki access):
export WEBAPP_WIKIJS_TOKEN="your-wiki-js-api-token" -
Run the server:
go run main.go
The server starts on 0.0.0.0:2323 by default.
Connecting
You can connect to the BBS using any standard Telnet client:
telnet localhost 2323
Configuration
- Host/Port: Currently hardcoded in
main.gofor simplicity. - Wiki API: Configured in
lib/repository.wiki.go. - Games API: Configured in
lib/repository.catalog.go. - Internationalization: Text is managed in
lib/sys.i18n.gousing a map-based system.
Project Structure
main.go: Entry point and network listener.lib/: Core logic and modules.repository.*.go: Data fetching from external APIs (Wiki, Games).menu.*.go: Logic for individual BBS sections.sys.print.go: Telnet-specific I/O and ANSI rendering.sys.header.go: Core state and UI layouts.sys.i18n.go: Translation maps.
Development
To build a production binary:
go build -o bbs-server main.go
To run with Docker:
docker-compose up --build