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)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.7 KiB


The following document outlines the roadmap for Salty IM and this specific reference design/implemtnation. Please see the Spec for details on the protocol. There shall be no significant changes to the spec besides minor improvements to the core functionality.

Short Term

In the short-term (days) the following is anticpated:

  • Get a working minimal viable Desktop and Mobile App (PWA) working.
  • Improve the TUI
  • Improve the setup process and mechanics
  • Improve the documentation

Medium Term

In the medium-term (weeks):

  • Contact Lists
  • Key Verification
  • Read Receipts
  • Message History
  • Message Redelivery

Long Term

In the medium-term (months):

  • Reactions
  • Quoted Replies
  • Group Chats
  • Free Public Salty Brokers in selected regions (AU, EU, US)
  • "Supervised Account"(s) / "Kid Mode" (See Below

On "Supervised Accounts" / "Kid Mode": One of the early requirements that motivated the start of this project ws to be able to allow yound children to get into social media and online messaging in a safe and controlled manner. The general idea here is to have a way (from the PWA) for a parent to setup a child's account in "Supervisoed Account" / "Kid Mode" where only the parent can unset this. The behaviour of this setting has two effects a) All outbound messages are CC'd to the parent (encrypted of course) and all new requests for new contacts (whether outbound or inbound) are routed through the parent for "approval".

Note: Some things may happen out-of-order and that's okay. Also note: This document and roadmap is an evolving document.