https://github.com/ssbc/go-ssb-room
Room server implemented in Go
https://github.com/ssbc/go-ssb-room
Last synced: about 1 year ago
JSON representation
Room server implemented in Go
- Host: GitHub
- URL: https://github.com/ssbc/go-ssb-room
- Owner: ssbc
- License: mit
- Created: 2021-02-01T15:44:30.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-09-11T08:07:00.000Z (almost 3 years ago)
- Last Synced: 2025-04-10T22:27:17.899Z (about 1 year ago)
- Language: Go
- Size: 3.03 MB
- Stars: 192
- Watchers: 10
- Forks: 34
- Open Issues: 62
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go-SSB Room
[](https://api.reuse.software/info/github.com/ssbc/go-ssb-room)
This repository implements the [Room (v1+v2) server spec](https://github.com/ssbc/rooms2), in Go.
It includes:
* secret-handshake+boxstream network transport, sometimes referred to as SHS, using [secretstream](https://github.com/ssbc/go-secretstream)
* muxrpc handlers for tunneling connections
* a fully embedded HTTP server & HTML frontend, for administering the room

See [this project](https://github.com/orgs/ssbc/projects/2) for current focus.
## :star: Features
* Rooms v1 (`tunnel.connect`, `tunnel.endpoints`, etc.)
* User management (allow- & denylisting + moderator & administrator roles), all administered via the web dashboard
* Multiple [privacy modes](https://ssbc.github.io/rooms2/#privacy-modes)
* [Sign-in with SSB](https://ssbc.github.io/ssb-http-auth-spec/)
* [HTTP Invites](https://github.com/ssbc/ssb-http-invite-spec)
* Alias management
For a comprehensive introduction to rooms 2.0, 🎥 [watch this video](https://www.youtube.com/watch?v=W5p0y_MWwDE).
For a description of MuxRPC APIs see https://github.com/ssbc/rooms2
## :rocket: Deployment
If you want to deploy a room server yourself, follow our [deployment.md](./docs/deployment.md) docs.
## :wrench: Development
For an in-depth codebase walkthrough, see the [development.md](./docs/development.md) file in the `docs` folder of this repository.
## :people_holding_hands: Authors
* [cryptix](https://github.com/cryptix) (`@p13zSAiOpguI9nsawkGijsnMfWmFd5rlUNpzekEE+vI=.ed25519`)
* [staltz](https://github.com/staltz)
* [cblgh](https://github.com/cblgh)
## License
MIT