ssb-ngi-pointer / go-ssb-room-archived

Room server implemented in Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

⚠️ This repo was moved to https://github.com/ssbc/go-ssb-room. This archival will remain in this GitHub org ssb-ngi-pointer to demonstrate the outcome of the work done by the SSB NGI Pointer team during 2020 and 2021. The SSB NGI Pointer team is no longer active because we completed our grant project.

Go-SSB Room

REUSE status

This repository contains code for a Secure Scuttlebutt Room (v1+v2) server, written in Go.

It includes:

  • secret-handshake+boxstream network transport, sometimes referred to as SHS, using secretstream
  • muxrpc handlers for tunneling connections
  • a fully embedded HTTP server & HTML frontend, for administering the room

⭐ Features

  • Rooms v1 (tunnel.connect, tunnel.endpoints, etc.)
  • User management (allow- & denylisting + moderator & administrator roles), all administered via the web dashboard
  • Multiple privacy modes
  • Sign-in with SSB
  • HTTP Invites
  • Alias management

For a comprehensive introduction to rooms 2.0, πŸŽ₯ watch this video.

πŸš€ Deployment

If you want to deploy a room server yourself, follow our deployment.md docs.

πŸ”§ Development

For an in-depth codebase walkthrough, see the development.md file in the docs folder of this repository.

πŸ§‘β€πŸ€β€πŸ§‘ Authors

License

MIT

About

Room server implemented in Go

License:MIT License


Languages

Language:Go 96.0%Language:JavaScript 3.4%Language:CSS 0.3%Language:Shell 0.2%Language:Dockerfile 0.1%