QxChat is an end-to-end encrypted messenger with rooms, calls, files and friends. No phone number, no email. Use our server at qxch.at or run your own.

  • Free and open source
QxChat on a Windows desktop: a conversation in the desktop app

Everything in one window

The same app on your desktop, your phone and in a browser tab.

Rooms and direct messages

Rooms with roles, pins, threads and polls, plus one-to-one conversations. Each room has its own key, kept by its members.

Rooms and direct messagesRooms and direct messages

What the server keeps about you

As little as we could manage. Here is what that means in practice.

How it works, in detail
  • Sealed before it leaves your device

    Room messages are encrypted with AES-256-GCM on your phone or computer, using a key only the room members hold. The server passes along ciphertext it cannot open.

  • No phone number. No email.

    An account is a username and a password. You also get 12 recovery words to write down. Nothing else is asked, so nothing else can leak.

  • Friends the server cannot map

    Friend requests go through blind mailboxes (QXP-PHANTOM). The server stores sealed envelopes for 24 hours and never holds a list of who knows whom.

  • Messages that do not pile up

    The server keeps the last 150 messages of each room in memory and never writes them to disk. A restart wipes them. Your history lives on your devices.

In your pocket

The Android app as it is today, in real screenshots.

On every screen you own

One account everywhere. On Android the app keeps the connection open in the background, so messages arrive without going through Google's or Apple's push servers.

Run your own server

Want your group on a machine you control? The server is open source and runs on your own computer or VPS. The guide walks you through it, step by step.

  • One Rust program

    Configured by a single TOML file. Run it with Cargo, Docker or PM2.

  • SQLite or PostgreSQL

    SQLite out of the box, PostgreSQL when your server grows.

  • The web app included

    The server hands out the web client, so people only need your address.

  • Calls on any network

    List your own TURN servers in the config so calls get through strict networks.

Made in the open

The server, the apps and this website are on GitHub. Read the code, report a bug, or come talk to the people who write it.

Stars on GitHub
28
Open repositories
6
3 contributors on GitHub

Questions people ask

Is QxChat free?

Yes. The apps, the server and the public instance at qxch.at cost nothing, and every line is MIT licensed on GitHub.

Can the server read my messages?

Not the content of encrypted rooms: it only relays ciphertext. It does see some metadata while you are connected, such as which rooms you join and when you are online. The handbook lists exactly what.

What happens if I forget my password?

Use your 12 recovery words to set a new one. Without them nobody can get the account back, us included.

Where are my messages stored?

On your devices. The server only keeps the last 150 messages of a room in memory so people can catch up, and loses them when it restarts.

Can I run my own server?

Yes. It is one Rust program with a TOML config, SQLite by default and PostgreSQL when you need it. Point the apps at your domain and invite your people.

Do I need to install anything?

No. qxch.at/app runs in any recent browser. The apps put QxChat on your desktop or home screen, and on Android they keep messages coming while the app is in the background.

Come say hi

Pick a username and you are in. It takes less than a minute.