Skip to content
Presence & ProtocolAn independent guide to Jabber and XMPP

Layer 04 · Clients

Clients: what to look for before you install one

Feature sets differ far more between XMPP clients than between closed messengers. What matters, and why mobile is a harder problem than desktop.

A phone and a laptop side by side on a wooden desk, both showing a plain chat window.

On a closed messenger the app and the service are one product. On XMPP they are not, so two people on the same server can have very different experiences depending on what they installed. The gap comes down to a short list of extensions: whether history is stored on the server, whether your other devices see what you sent, whether files go anywhere useful, and how encryption is handled. This layer is about reading that list, and about why phones make all of it harder.

In this layer

  1. A laptop at night showing a read-only database session, with a printed schema page and an external drive.

    Your client's archive on disk, and how to open it

    What a desktop client keeps on your own disk, why a plain database file survives, and how to inspect it read only with an ordinary database tool.

  2. A laptop open on a terminal window with a printed accessibility checklist and handwritten dates beside it.

    Accessibility in a chat client: what a reader is owed

    What a chat client owes a reader who did not build it: keyboard use, screen reader labels, contrast, text size, captions, and a first review a volunteer team

  3. A desktop chat client window open on a profile page showing a small looping avatar image.

    What a client does with an animated avatar

    The network carries the picture once; what your contacts see afterwards is decided in the client, not in the protocol.

  4. A person pausing at a garden gate on a quiet residential street, looking along the row of houses.

    Choosing where your account lives

    The app is the furniture. The server is the address, and the address is harder to move.

  5. A closed laptop on a kitchen table beside a mug and a pair of reading glasses in morning light.

    What to check before you install a client

    Two clients on the same account can behave like two different products. The difference is a short list of extensions.

  6. A phone face down on a table next to a battery pack and a short charging cable, evening light.

    Why mobile XMPP is harder than desktop

    The protocol assumes a connection that stays open. A phone assumes the opposite. Everything else follows from that.

Every essay in this layer is written against the reference page on the three stanza types, and two neighbouring layers extend it: Protocol and History.