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!"
| cmd/urit | ||
| docs | ||
| internal | ||
| screens | ||
| .directory | ||
| config.toml | ||
| CREDITS.md | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| README.md | ||
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.