Viber

Best Self Hosted Alternatives to Viber

A curated collection of the 9 best self hosted alternatives to Viber.

Viber is a cross-platform messaging and VoIP service providing one-to-one and group text chats, voice and video calls, media and sticker sharing, and synchronized mobile/desktop clients. It also offers business messaging features for customer engagement.

Alternatives List

#1
Tinode

Tinode

Tinode is an open source instant messaging platform with a Go backend, web/mobile clients, JSON WebSocket and gRPC APIs, and support for one-to-one and group chat.

Tinode screenshot

Tinode is a full-stack instant messaging platform designed for building modern chat applications. It provides a Go-based server, official clients for web and mobile, and APIs that support custom integrations such as chatbots and automated agents.

Key Features

  • One-to-one messaging, group chats, and broadcast-style channels with read-only subscribers
  • Real-time delivery, read receipts, typing indicators, and presence notifications
  • Rich message content: markdown-style formatting, inline media, and file attachments
  • Voice and video calls, plus voice messages
  • Granular per-topic access control and server-side blocking controls
  • Extensible architecture with plugins for features like moderation and chatbots
  • JSON over WebSocket (with optional long polling) and Protobuf over gRPC
  • Pluggable database layer with support for PostgreSQL, MySQL/MariaDB, and MongoDB
  • Media/file handling via local filesystem or S3-compatible storage backends

Use Cases

  • Building a custom consumer or community chat app (mobile + web)
  • Adding in-app messaging, support chat, or anonymous chat to a product
  • Developing bot-driven workflows and integrations using the messaging APIs

Limitations and Considerations

  • Federation and end-to-end encryption are listed as planned features and may not be available
  • Some advanced capabilities (for example, full-text message search) are planned rather than included by default

Tinode fits teams that want an embeddable messaging backend with strong real-time features and multiple official clients. Its API options and extensibility make it suitable for both standalone chat products and messaging features inside existing applications.

13kstars
2kforks
#2
Element

Element

Element is a Matrix client for secure team messaging and collaboration, offering end-to-end encrypted chats and calls with interoperability across the Matrix network.

Element screenshot

Element is a Matrix-based collaboration and messaging client for web and desktop, designed for interoperable real-time communication across the federated Matrix network. It supports deployments where organizations want control over their communication stack while remaining compatible with other Matrix services.

Key Features

  • Matrix client for rooms, direct messages, and community-style spaces
  • End-to-end encryption for private conversations (Matrix E2EE)
  • Cross-organization interoperability via Matrix federation
  • Audio/video calling capabilities via the Matrix ecosystem
  • Configurable deployment via a static web build and a JSON configuration file
  • Optional desktop app packaging (Electron wrapper)

Use Cases

  • Secure team chat for companies, communities, and public-sector organizations
  • Federated collaboration between multiple organizations using different Matrix servers
  • Self-hosted communication front-end paired with a Matrix homeserver

Limitations and Considerations

  • Requires a compatible Matrix homeserver (such as Synapse) to function
  • Recommended to host the client on a different domain than the homeserver to reduce XSS risk

Element is a widely used Matrix client that emphasizes interoperability, encryption, and deployment flexibility. It is a strong choice for organizations that want modern real-time collaboration without vendor lock-in.

12.5kstars
2.4kforks
#3
SimpleX Chat

SimpleX Chat

Open-source, decentralized messaging network built on a Haskell core with Kotlin Multiplatform and native iOS clients; end-to-end encrypted messaging without user IDs.

SimpleX Chat screenshot

SimpleX Chat is an open-source, privacy-first messaging network designed to operate without any user identifiers. It provides mobile, desktop and terminal clients built on a Haskell core, delivering end-to-end encrypted messaging and group/community features while letting operators run their own servers.

Key Features

  • Messaging without user identifiers: the network is designed to deliver messages and form connections without persistent numeric or textual user IDs.
  • Strong encryption: double-ratchet end-to-end encryption with an additional encryption layer and local database encryption (SQLCipher/SQLite for device storage).
  • Haskell core with native UI bridges: a Haskell-based core library exposed to client UIs via FFI, used by Kotlin Multiplatform (Android/desktop) and native iOS (Swift) apps.
  • Multiple clients and runtimes: Android (Kotlin Multiplatform), iOS (Swift), desktop builds and a terminal/CLI client for Linux/macOS/Windows.
  • Flexible storage backends: SQLite (default for mobile/desktop) and PostgreSQL support for server-side deployments; storage abstraction via a unified store interface.
  • Extensible platform: bots API, SDKs and a directory service for discoverable communities and group moderation tools.
  • Cross-platform build tooling: builds and cross-compilation support using Cabal/Nix and Docker-based build scripts, with prebuilt packages distributed via Play Store, F‑Droid, TestFlight and direct APKs.

Use Cases

  • Private one-to-one messaging and group conversations where participants do not want persistent user identifiers.
  • Community-run groups and moderated communities using the SimpleX directory and community voucher model for server funding.
  • Developers building bots, automations or integrations using the provided bots API and client SDKs.

Limitations and Considerations

  • Platform/build complexity: the Haskell core and cross-compilation workflow make local builds more involved than typical native apps; building from source normally requires Haskell tooling, Nix or Docker images.
  • Mobile support constraints: historically builds targeted newer Android versions and specific CPU architectures; current official builds require modern mobile OS versions (Android 8+ minimum is documented) and some legacy devices may need experimental APKs.

SimpleX Chat is focused on strong privacy guarantees, decentralization and developer extensibility. It is suited for users and communities that require encrypted messaging without traditional identifiers and for developers who want to build bots or host community servers.

10.2kstars
545forks
#4
Tox

Tox

Tox is a decentralized, peer-to-peer communication system for encrypted messaging, voice/video calls, screen sharing, and file transfers without central servers.

Tox screenshot

Tox is a peer-to-peer (serverless) communication network and protocol used by messaging clients to provide private conversations without relying on central servers. It focuses on end-to-end encrypted chat and real-time audio/video features while keeping user identities based on cryptographic keys.

Key Features

  • Peer-to-peer networking without central servers for message routing
  • End-to-end encryption and authentication implemented via libsodium/NaCl primitives
  • Instant messaging with friend requests and contact-style identities (public-key based)
  • Encrypted voice and video calls (A/V support depends on client build)
  • Screen sharing and file sharing support in Tox clients
  • Group chats supported by the protocol and ecosystem clients

Use Cases

  • Private one-to-one messaging and calls without a hosted backend
  • Building custom bots or automation around the Toxcore client library API
  • Secure team or community group chats in environments where central servers are undesirable

Limitations and Considerations

  • The core library and network have historically been described as experimental and not formally audited as a complete system
  • Bootstrapping into the network requires known bootstrap nodes and proper client configuration

Tox is best viewed as the underlying protocol and core library (Toxcore) powering multiple desktop and mobile clients. It is a strong fit for users who want decentralized communications with modern encryption and a client ecosystem rather than a single hosted service.

2.5kstars
307forks
#5
Databag

Databag

Self-hosted, lightweight federated messenger with end-to-end encrypted threads and optional WebRTC audio/video calling across independently hosted nodes.

Databag screenshot

Databag is a fast, lightweight self-hosted messenger designed to run on minimal hardware while still supporting modern messaging features. It is federated, allowing users on different independently hosted nodes to communicate directly with strong cryptographic identities and end-to-end encryption.

Key Features

  • Federated messaging between accounts on different nodes
  • Public/private key based identity that is not tied to a hosting domain
  • End-to-end encryption for sealed topics so the server admin cannot read content
  • Topic-based threads to organize conversations by subject
  • Unlimited participants in group threads
  • Low-latency push using WebSockets (avoids polling)
  • Optional audio and video calls using WebRTC (requires STUN/TURN for NAT traversal)
  • Multi-factor authentication via TOTP
  • Mobile push notifications (UnifiedPush, FCM, APN)

Use Cases

  • Private family or small-community messaging on a personal server or low-power device
  • Federated messaging between multiple organizations without a central provider
  • Secure group threads for projects where message privacy is required

Limitations and Considerations

  • WebRTC calls typically require configuring a STUN/TURN relay to work reliably behind NAT

Databag focuses on efficiency and decentralization while keeping the deployment simple enough for home servers. It fits best for users who want federated communication, end-to-end encryption, and optional calling without heavy infrastructure.

1.4kstars
92forks
#6
Snikket

Snikket

Self-hosted, open-source XMPP-based messaging server providing end-to-end encryption, multi-device sync, federation, secure backups, and integrated WebRTC audio/video calling.

Snikket screenshot

Snikket is an open-source, XMPP-based messaging server designed to give groups and organisations a privacy-focused alternative to centralized messaging platforms. It provides account and instance management, multi-device synchronization, secure backups, and integrated audio/video calling.

Key Features

  • Uses the XMPP protocol with a Prosody-based server stack and an admin web portal for account and invitation management.
  • End-to-end encryption for private messaging and groups; supports read/typing indicators and media/file sharing.
  • Multi-device support with synced conversations and invitation-link-based onboarding for new users.
  • Integrated WebRTC audio/video calling with built-in STUN/TURN support to improve connectivity across NATs and firewalls.
  • Secure encrypted backups for restoring conversations on new devices.
  • Federation support (server-to-server/XMPP s2s) so instances can communicate across the wider XMPP network.
  • Distributed as Docker images with an opinionated, easy quick-start using docker compose and configuration templates.

Use Cases

  • Small communities, families, or teams that need a privacy-respecting group chat and calling platform under their control.
  • Organisations wanting a standards-based messaging stack (XMPP) with federation and multi-device synchronization.
  • Projects or communities that prefer open-source, auditable server software with invitation-based onboarding and encrypted backups.

Limitations and Considerations

  • Requires control of network ports (HTTP(S), XMPP c2s/s2s and UDP port ranges for STUN/TURN); may need reverse-proxying if other web services run on the same host.
  • Not intended as a drop-in replacement for highly customised multi-domain XMPP deployments; advanced or niche XMPP features may require working directly with underlying Prosody configuration.
  • The project is actively developed and some features are marked as previews or feature-flagged; operators should follow release notes and upgrade guidance.

Snikket offers a focused, standards-based messaging server that balances usability with privacy and federation. It is suited for operators who want an integrated, well-documented XMPP stack with built-in calling and backup features.

356stars
38forks
#7
positive-intentions Chat

positive-intentions Chat

Decentralized, browser-first chat focused on privacy and peer-to-peer interactions. Supports end-to-end encryption, WebRTC file sharing, voice/video calls, mixed-reality spaces and a webtop environment.

positive-intentions Chat screenshot

A browser-focused decentralized chat application that emphasizes privacy, peer-to-peer communication, and browser-based security. It provides a local-first experience using browser storage and modern web peer technologies to connect users directly.

Key Features

  • End-to-end encrypted messaging for private conversations
  • Peer-to-peer file sharing and real-time connections using WebRTC
  • Voice and video calling capabilities with low-latency streams
  • Mixed-reality / shared virtual spaces for immersive interactions
  • Image board and community feed for shared media discovery
  • Webtop environment offering a desktop-like experience in the browser
  • Local-first/browser storage model to keep data primarily client-side
  • Multi-platform build support (PWA, mobile builds via Capacitor, desktop via Tauri) and Docker-friendly development

Use Cases

  • Secure, private one-to-one or small-group conversations without centralized servers
  • Real-time file, voice and video communication between peers for collaboration
  • Community-driven image sharing and lightweight social feed within a privacy-focused app

Limitations and Considerations

  • Project is experimental and explicitly marked not production-ready; may contain bugs and incomplete features
  • Browser storage synchronization can cause conflicts when multiple tabs or devices use the same storage
  • Feature maturity varies (mobile/desktop builds require platform-specific toolchains) and there is limited enterprise-grade infrastructure or support

In summary, positive-intentions Chat is a privacy-oriented, experimental browser-first chat platform that leverages WebRTC and local storage to deliver decentralized messaging, media sharing, and multimodal real-time communication. It is best suited for testing, research, and small-scale private deployments while the project matures.

258stars
26forks
#8
SAMA

SAMA

SAMA is a Node.js-based open-source chat server using uWebSockets.js, MongoDB and Redis, providing WebSocket/HTTP APIs, E2EE, clustering, and web/mobile clients.

SAMA screenshot

SAMA is an open-source messaging server designed as a modern alternative to legacy chat protocols. It provides real-time WebSocket and HTTP APIs for users, conversations, messages, activities and address books, and ships with reference web and mobile clients.

Key Features

  • High-performance WebSocket core powered by uWebSockets.js for low-latency messaging
  • REST and real-time APIs covering Users, Conversations, Messages, Activities, Address Book and Push Notifications
  • Persistent storage using MongoDB and ephemeral/state features backed by Redis (presence, caching/pubsub)
  • End-to-end encryption support and built-in push notification flows
  • Clustering and horizontal scaling primitives for multi-node deployments
  • Docker-friendly deployment and reference frontend (web) and Flutter mobile clients
  • GPL-3.0 licensed project with an emphasis on a compact, modern protocol alternative to XMPP

Use Cases

  • Add real-time chat, group conversations and activity streams to mobile and web applications
  • Build team chat or community messaging platforms with end-to-end encryption and push notifications
  • Implement lightweight, scalable messaging backends for consumer or enterprise apps requiring low latency

Limitations and Considerations

  • Uses a custom SAMA protocol (designed as an alternative to XMPP) which has a smaller ecosystem and fewer third-party clients
  • GPL-3.0 license can restrict embedding into proprietary products without complying with license terms
  • High-concurrency deployments require tuning and appropriate resources for uWebSockets.js, MongoDB and Redis

SAMA is a focused chat server for teams and apps that need a high-performance, modern messaging backend. It is suitable for projects that can adopt its protocol and license model and want a Docker-friendly, scalable real-time messaging stack.

147stars
12forks
#9
Jami

Jami

Jami is a distributed communication platform for private messaging, audio/video calls, and conferencing, designed to work without central servers and with end-to-end encryption.

Jami is a distributed communication platform for private messaging and real-time audio/video communication. It is designed to work without relying on central servers, aiming to keep user communications private and resilient.

Key Features

  • Peer-to-peer messaging and calling with a distributed architecture
  • Audio and video calls, including multi-party conferencing
  • End-to-end encryption for communications
  • Account creation without phone numbers and support for multiple devices
  • Contact management and conversation history synchronization between devices

Use Cases

  • Private team or family communication without depending on centralized services
  • Secure voice/video calling for communities with unreliable infrastructure
  • Self-managed communications for organizations with strict privacy requirements

Jami is a strong choice for users who want a privacy-respecting communications app with a decentralized design. It combines everyday chat and calling features with an architecture intended to reduce reliance on third-party servers.

Why choose an open source alternative?

  • Data ownership: Keep your data on your own servers
  • No vendor lock-in: Freedom to switch or modify at any time
  • Cost savings: Reduce or eliminate subscription fees
  • Transparency: Audit the code and know exactly what's running