Databag is an open-source, self-hosted messaging service for the decentralized web, featuring direct communication, federation, end-to-end encryption, audio and video calls, and more. It relies on a STUN/TURN relay server for NAT traversal, and testing has been done with coturn and pion. Users wanting to enable audio and video calls should set up their own relay server.

Features

  • Utilizes a Decentralized system for direct communication between the application and the server node, ensuring an efficient flow of information.
  • Employs a Federated system where accounts on different nodes have the ability to communicate with each other, broadening the network of interaction.
  • Makes use of Public-Private key based identity, which is not bound to any blockchain or hosting domain, ensuring the system's independence.
  • Incorporates End-to-End encryption, meaning the hosting admin cannot view sealed topics, with the default being unsealed. This protects users' privacy and data security.
  • Supports Audio and Video Calls. Note that the natural traversal requires a separate relay server, which helps to maintain the quality of calls.
  • Implements Topic based threads where messages are organized by topic and not contacts, enhancing the clarity and organization of conversations.
  • Lightweight in design, so much so that the server can run on a basic device like a raspberry pi zero v1.3. This makes the system accessible and easy to use.
  • Achieves low latency through the use of websockets for push events to avoid polling, ensuring real-time updates and swift communication.
  • Offers Unlimited accounts per node, which means you can host for your entire family, making it versatile and family-friendly.
  • Provides Mobile alerts for new contacts, messages, and calls. It supports UnifiedPush, FCM, APN, ensuring users stay updated and alerted about new happenings.

Platforms

  • Android (F-Droid, Google Play)
  • iOS
  • Web
  • Docker

License

  • Apache 2.0 License

Resources

GitHub - balzack/databag: A tiny selfhosted federated messenger for the decentralized web.
A tiny selfhosted federated messenger for the decentralized web. - GitHub - balzack/databag: A tiny selfhosted federated messenger for the decentralized web.