The T.A.G. BBS was quite popular in the midwest in the late 1980s and early 1990s. I briefly ran version 2 (I think) just before the internet was taking hold. While it only lasted a couple months, and almost no one knew about my board, it was an experience I'll never forget. Since TAG was originally written for the Amiga, I had to find a way to modernize it with a current language, preferably something that is more cross-platform. So, as an homage, I've re-written in Go and renamed 'urit', as in "You're It!"
Find a file
2026-05-02 21:11:50 -04:00
cmd/urit Initial Commit 2026-05-02 21:11:50 -04:00
docs Initial Commit 2026-05-02 21:11:50 -04:00
internal Initial Commit 2026-05-02 21:11:50 -04:00
screens Initial Commit 2026-05-02 21:11:50 -04:00
.directory Initial Commit 2026-05-02 21:11:50 -04:00
config.toml Initial Commit 2026-05-02 21:11:50 -04:00
CREDITS.md Initial Commit 2026-05-02 21:11:50 -04:00
go.mod Initial Commit 2026-05-02 21:11:50 -04:00
go.sum Initial Commit 2026-05-02 21:11:50 -04:00
LICENSE Initial Commit 2026-05-02 21:11:50 -04:00
README.md Initial Commit 2026-05-02 21:11:50 -04:00

URIT BBS

A modern bulletin board system inspired by T.A.G.-BBS (1986), written in Go.

Features

  • Telnet and SSH access
  • Multi-user support
  • Message boards with security-based access control
  • Private mail
  • File libraries
  • ANSI terminal support
  • SQLite storage (zero-configuration)
  • Cross-platform: runs on x86, ARM64 (Raspberry Pi), and more

Building

Requires Go 1.22 or later.

go build -o urit ./cmd/urit/

Cross-compile for Raspberry Pi

GOOS=linux GOARCH=arm64 go build -o urit ./cmd/urit/

Quick Start

Initialize a new BBS instance:

./urit init

This creates the database, a sysop account, starter boards, a welcome bulletin, an empty file library, and sample ANSI screen files. It's the modern equivalent of the original TAG-BBS's GENERATE program.

Start the server:

./urit

Connect with any telnet client:

telnet localhost 2323

Usage

./urit              # Start the BBS server (default config: config.toml)
./urit -config PATH # Start with a specific config file
./urit init         # Initialize a new BBS instance
./urit init -force  # Re-initialize, overwriting existing database
./urit version      # Print version and exit
./urit help         # Show help

Configuration

See config.toml for all available settings. Running urit init will create a default config file if one doesn't exist.

Project Status

Under active development.

License

This project is released into the public domain. See LICENSE for details.

Credits

See CREDITS.md for acknowledgments.