Retro Bulletin Board Systems on atproto. Web app and TUI. lazy mirror of alyraffauf/atbbs atbbs.xyz
forums python tui atproto bbs
3
fork

Configure Feed

Select the types of activity you want to include in your feed.

README.md: update install methods and docs

+24 -14
+24 -14
README.md
··· 20 20 - **Moderation**: Ban users, hide posts, manage your boards. 21 21 - **Discovery**: Browse BBSes from across the network. 22 22 23 - ## Quick start 23 + ## Install 24 24 25 - ### TUI (recommended) 25 + Requires Python 3.14+. 26 26 27 - Requires Python 3.14+ and [uv](https://docs.astral.sh/uv/). 27 + ### uv 28 28 29 29 ```bash 30 30 uv tool install atbbs 31 + ``` 32 + 33 + ### Homebrew 34 + 35 + ```bash 36 + brew install alyraffauf/tap/atbbs 37 + ``` 38 + 39 + ## Usage 40 + 41 + ```bash 31 42 atbbs # launch TUI 32 43 atbbs dial aly.codes # dial a BBS directly 33 44 atbbs serve # start the web server 34 45 atbbs --help # see all options 35 46 ``` 36 47 37 - Or from source: 38 - 39 - ```bash 40 - git clone https://github.com/alyraffauf/atbbs.git 41 - cd atbbs 42 - uv sync 43 - uv run atbbs 44 - ``` 48 + ## Web app 45 49 46 - ### Web app (Docker) 50 + ### Docker 47 51 48 52 ```bash 49 53 docker run -d -p 8000:8000 -v atbbs-data:/data -e PUBLIC_URL=https://your-domain.com ghcr.io/alyraffauf/atbbs:latest ··· 59 63 60 64 Visit `http://localhost:8000`. 61 65 62 - ### Web app (from source) 66 + ### From source 67 + 68 + Requires [Node.js](https://nodejs.org/) and [just](https://just.systems/). 63 69 64 70 ```bash 65 71 git clone https://github.com/alyraffauf/atbbs.git 66 72 cd atbbs 73 + npm install 67 74 uv sync 68 - just dev 75 + just dev # run dev server with hot reload 76 + just fmt # format code 77 + just build # build docker image 69 78 ``` 70 79 71 80 ## Architecture ··· 73 82 atbbs has no backend database for content. All BBS data lives in atproto repos: 74 83 75 84 - **Sysop records**: `xyz.atboards.site`, `xyz.atboards.board`, `xyz.atboards.news` 85 + - **Moderation records**: `xyz.atboards.ban`, `xyz.atboards.hide` 76 86 - **User records**: `xyz.atboards.thread`, `xyz.atboards.reply` 77 87 78 88 The web app and TUI query existing network infrastructure: