Skip to content

Salty-im/.github

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

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.


🎬 Demo

asciicast

🏃‍ Quick Start

  • Install salty-chat:
$ go install go.mills.io/saltyim/cmd/salty-chat@latest
  • Create and register an account:
$ salty-chat register <nick>@mills.io

Replace <nick> with a nickname / alias you'd like.

  • Start chatting!
$ salty-chat chat [email protected]

Note: This quick start installs our reference command-line client salty-chat and registers an account on the broker running at salty.mills.io.

Security Warning: Please note that your IP address is logged and that salty.mills.io is the personal infrastructure of James Mills.

For full documentation onw how to setup your own broker, with own domain on your own infrastructure (preferred), please read on...

👉 Documentation

The following is more details documentation on setting up your Domain Name (DNS) records (optional) and running our reference broker saltyd on your own server and configuring our reference client salty-chat:

  1. Make sure you have a Domain Name Choosing a Registrar
  2. Read the full instructions and start chatting!

🌏 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).

⁉ 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.

📕 Specification

💾 Sources

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

  • saltyim saltyim is the Go library and reference client and broker implementation for Salty IM it contains a command-line client (cli), a terminal user interface(tui), builtin server/broker and a Mobile / Desktop App PWA (progressive web app)
  • salty.im This website's source files and the Salty specification.
  • salty The cryptography library tools used by Salty IM utilising Saltpack and keys.pub.

💬 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!

🕵️‍♂️ PrivacyPolicy

Salty.IM is a decentralised instant messaging protocol inspired by IndieWeb and Twtxt and accompanying project of Yarn.social.

Like Yarn.social there is a reference broker (server) and client(s) such as the command-line client salty-chat and a mobile app.

The privacy policy therefore only strictly applies to the reference broker and clients (including the mobile app) built and provided by the Salty.Im developers.

👨‍⚖️ License

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