salty.im - secure, easy, self-hosted messaging

salty.im is an open specification for a new Saltpack based e2e encrypted messaging protocol and platform for secure communications with a focus on privacy, security and being self-hosted.

Read the full specification

asciicast

๐Ÿ‘‰ Getting Started

  1. Make sure you have a Domain Name Choosing a Registrar
  2. Install a Salty IM client for your device. Installing Salty
  3. Setup and start chatting! Setup

๐ŸŒ Choosing a Registrar

There are numerous Domain Name Registrars you can choose from to register a domain name. It really doesn’t matter which one you use, but you do need a domain name to use Salty IM. Salty IM will also work with a sub-domain (a name under someone else’s domain).

Some reputable registrars include:

Once you have a domain name you will also need to run a small Web Server on it so that Salty Addresses can be looked up automatically by the Discovery process.

As Salty IM is decentralised this is an important step. If you cannot for some reason obtain a domain name and run a small web server, there are other options (see below).

๐Ÿ’พ Installing Salty

To install Salty Chat simply run the following in your Terminal:

$ go install go.mills.io/saltyim/cmd/salty-chat@latest

Note: Currently you will need to have Go installed as we do not yet currently release any packages for download yet. You may also need to set GOPATH and add $GOPATH/bin to your $PATH. Example:

export GOPATH="$HOME/go"
export PATH="$GOPATH/bin:$PATH"

โš™๏ธ Setup

Once you have a Domain, a Web Server and have Salty Chat installed, run:

$ salty-chat make-user user@domain

And follow the instructions.

You’re all set! Happy chatting! ๐Ÿค—

Say hi ๐Ÿ‘‹

$ salty-chat send prologic@mills.io "Hey! ๐Ÿ‘‹ This is really cool! ๐Ÿ˜Ž"

โ‰ Help! What?!

Okay if you don’t understand anything about Domains and Web Servers don’t worry!

We’ve got you covered! Currently you can skip these steps and just install Salty straight away and just following the setup process. Although we highly encourage you to setup your own domain and server as Salty IM is designed to be decentralised, we realize this is not for everyone. By default Salty IM will use publicly available free servers so you don’t need to worry about this.

๐Ÿ’พ Sources

The project is managed by a self-hosted Gitea instance at https://git.mills.io/saltyim/

๐Ÿ’ฌ Collaboration

We have an IRC channel #salty.im on the Libera.Chat IRC network. You are welcome to come chat to us, hang out and get involved!

๐Ÿ‘จโ€โš–๏ธ License

Salty IM and Salty Chat are licensed under the terms of the MIT License.