Skip to content

processone/fluux-messenger

Repository files navigation

Fluux Messenger Logo

Fluux Messenger

Release Downloads Repo Size License: AGPL v3 Build Status PRs Welcome

A modern, cross-platform XMPP client for communities and organizations

Try the Live Demo

Table of Contents

Screenshots

Light and Dark themes

Light and dark modes side by side

Group Chat Themes & Customization
Group Chat Themes
Multi-user chat with roles, reactions, and polls 14 built-in themes, custom accents, and font settings

See all screenshots in the visual overview

Features

Rich Messaging

  • Reactions, Replies & Styling - Emoji reactions with quick toolbar, threaded replies, and rich text formatting (bold, italic, code blocks with syntax highlighting)
  • Message Retraction & Moderation - Delete your own messages or moderate room messages with full audit trail
  • Link Previews - Automatic Open Graph previews for shared URLs
  • File Sharing - HTTP uploads with drag-and-drop, thumbnails, progress indicators, image lightbox, and text file preview
  • Polls - Create polls in rooms with emoji voting, deadlines, single or multi-vote modes, and live result tallies

Group Chat & Collaboration

  • Multi-user Chat - Complete MUC support with roles, affiliations, custom hats (role badges), @mentions, and bookmarks
  • Quick Chat - Instantly create ad-hoc group conversations and invite contacts by name
  • Per-User Ignore - Mute specific users per room, synced across devices
  • Activity Log - Persistent feed of events: invitations, subscription requests, reactions, poll votes, joins and leaves

Powerful Search

  • Full-text Search - Instant offline search powered by an IndexedDB inverted index, supplemented by live server archive queries
  • Find on Page - Cmd/Ctrl+F to search within the current conversation with highlight and scroll
  • Smart Filters - Type filter pills, in: prefix autocomplete, quoted exact-phrase matching, and keyboard-navigable results with context preview

Theming & Personalization

  • 14 Built-in Themes - Catppuccin, Nord, Dracula, Gruvbox, Tokyo Night, Rosé Pine, Solarized, and more — plus light/dark mode
  • Custom Themes - Import/export themes as JSON, pick a custom accent color, or write CSS overrides in the built-in editor
  • Synced Across Devices - Theme, accent, and font size preferences are stored server-side and follow you everywhere
  • Internationalization - 31 languages including complete EU coverage

Privacy & Security

  • Self-hostable - Connect to any XMPP server, no vendor lock-in, no third-party dependency
  • FAST Authentication - Modern SASL2 with token-based reconnection for instant, password-less session resumption
  • Contact Blocking - Full block/unblock support with a dedicated management screen
  • In-Band Password Change - Change your account password without leaving the app

Desktop & Cross-Platform

  • Cross-platform - Available on the web, macOS (Intel & Apple Silicon), Windows, and Linux (deb, rpm, flatpak, AUR)
  • Auto Updates - Built-in update checker with release notes and one-click install (desktop)
  • Native Notifications - Desktop notifications with click-to-focus; web push notifications even when the tab is closed
  • Auto-Away - Automatically sets your status to away on system idle and restores it on activity
  • Offline Support - IndexedDB storage with automatic sync and stream management session resumption on reconnect

Power User Tools

  • Command Palette - Keyboard-accessible launcher for conversations, contacts, rooms, and actions
  • Keyboard Shortcuts - Comprehensive shortcut system with a categorized help overlay and AZERTY support
  • Built-in XMPP Console - Live stanza inspector and debug interface
  • Server Administration - Manage users, rooms, and server commands right from the client (for admins)
  • User Profiles - Rich user info popovers with vCard details, connected devices, timezone, and last seen status

Developer-Friendly

  • Headless SDK - Reusable @fluux/sdk package for building custom XMPP clients or bots
  • 50+ XEPs Implemented - MAM, MUC, Stream Management, Message Carbons, HTTP File Upload, Reactions, FAST, and many more
  • Open Source - AGPL-3.0 licensed

Quick Start

Get started with Fluux Messenger in a few simple steps:

Want to try it first? Head over to demo.fluux.io for an instant live demo, no installation needed.

  1. Download the latest release for your platform from the releases page.

  2. Install using the instructions for your platform below.

  3. Connect to any XMPP server with your credentials and start chatting!

Windows (x64)
Format How to install
.exe Run the setup wizard (recommended)
.msi Run msiexec /i Fluux-Messenger_*_Windows_x64.msi or double-click to install
macOS (Intel & Apple Silicon)
Format How to install
.dmg Open the image and drag Fluux Messenger to Applications (recommended)
.app.tar.gz Extract with tar xzf and move the .app to Applications

Both x64 (Intel) and arm64 (Apple Silicon) builds are available.

Linux (x64 & arm64)
Format How to install
.deb sudo dpkg -i Fluux-Messenger_*.deb (Debian, Ubuntu, Mint...)
.rpm sudo rpm -i Fluux-Messenger_*.rpm (Fedora, RHEL, openSUSE...)
.flatpak flatpak install Fluux-Messenger_*.flatpak
.tar.gz Extract with tar xzf and run the binary directly

Both x64 and arm64 builds are available for all formats.

Arch Linux users can install from the AUR: fluux-messenger

Web (self-hosted)

Download the fluux-messenger-*-web.zip asset from the releases page, extract it, and serve it with any web server of your choice (app must be served over HTTP). This also works as a PWA on mobile devices when served from your own domain.

Build from source

See the Developer Guide for instructions on building and running Fluux Messenger locally.

Need help? Check out our support options below.

Technology Stack

  • Frontend: React 18 + TypeScript
  • Desktop: Tauri 2.x (Rust-based, lightweight)
  • Styling: Tailwind CSS
  • State Management: Zustand + XState
  • Build System: Vite + Vitest
  • XMPP: @xmpp/client + @fluux/sdk
  • Storage: IndexedDB with idb

Support and Community

We have many ideas and exciting additions planned for Fluux Messenger! We welcome all questions, feedback, and bug reports.

  • GitHub Issues - Use Issues to report bugs, request features, or track tasks. We use Issues as our lightweight roadmap for upcoming improvements and are always open to new ideas - don't hesitate to propose yours!
  • GitHub Discussions - Use Discussions for questions, ideas, or general conversations that don't require formal tracking. Great for brainstorming, getting help without opening an Issue, or suggesting documentation improvements.
  • XMPP Chatroom - Join fluux-messenger@conference.process-one.net for live chat with the community and maintainers.

Frequently Asked Questions

Have suggestions for this FAQ? Feel free to ask questions or propose additions in our Q&A Discussions.

Which XMPP servers are compatible with Fluux Messenger?

We aim to create an XMPP client that respects standards, but currently the project has been tested exclusively with ejabberd. We're eager to receive feedback on compatibility with other servers. If you test Fluux Messenger with a different XMPP server, please share your experience in the Discussions!

Will there be other installations methods? Can I run it on my own server?

Yes. A pre-built static web bundle (-web.zip) is available on the releases page. Simply extract it and serve it with any web server.

Looking ahead, we also plan to make Fluux Messenger available on F-Droid, and possibly on the Google Play Store as well.

Contributing

Contributions are welcome! See CONTRIBUTING for detailed guidelines.

For getting started with development, you can check out our Developer Guide.

License

Fluux Messenger is licensed under the GNU Affero General Public License v3.0 or later. See LICENSE

Star History

Star History Chart


Built with ❤️ by ProcessOne.

About

Fluux Messenger: A fast, modern, cross-platform XMPP client for communities and organizations.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Contributors