# Scuttlebutt in Haskell [Scuttlebutt](https://www.scuttlebutt.nz/) is a decentralised gossiping platform which also works well offline. This project is under active development (in alpha). USE AT YOUR OWN RISK. ## Contributing Please post bugs, patches, or requests to #ssb-haskell-dev on Scuttlebutt. ## Building and Installation Haskell [stack](https://docs.haskellstack.org/en/stable/README/) is used to build the code and manage dependencies. See their [README](https://docs.haskellstack.org/en/stable/README/) for how to install it. Stack can then be used to: Build the project ```sh stack build ``` Install the project into your local bin path ```sh stack install ``` Run the project without installing it ```sh stack run -- help ``` ## Hosting a SSB Room You can host an [SSB room](https://github.com/staltz/ssb-room) using this project. SSB peers can then use the room to discover and communicate with each other. For more information, refer to the official project. ```sh ssb host-room --help # Usage: ssb host-room NAME DESCRIPTION HOSTNAME # host a room # # Available options: # NAME what's the room called # DESCRIPTION summary of room's purpose # HOSTNAME IP address or Domain Name to host on. The Domain Name # must resolve. # -h,--help Show this help text ``` For example: ```sh ssb host-room "the-room" "Movie discussion on a cult-classic" room.lets-discuss.org # Hosting room for 'net:room.lets-discuss.org:8008~shs:f2Ofh8qBvMNaQSI0RJTf7zr/NEfSOU/RuOXzCMNRu0M=:SSB+Room+PSK3TLYC2T86EHQCUHBUHASCASE18JBV24=' ``` ## Related Projects - [Cryptoscope's SSB](https://github.com/cryptoscope/ssb) - Scuttlebutt implementation in Golang - [Scuttlebutt Types](https://git.joeyh.name/git/haskell-scuttlebutt-types.git/) - data types for common Scuttlebutt messages - [Sunrise Choir's SSB](https://github.com/sunrise-choir) - Scuttlebutt implementation in Rust