📦 jabjab

NameSize
📁 gradle
📁 libs
📁 src
🔧 build.gradle 10402
📄 CHANGELOG.md 35789
📄 conversations.doap 24476
📄 gradle.properties 338
📄 gradlew 8733
📄 gradlew.bat 2937
📄 LICENSE 35147
📄 proguard-rules.pro 8547
📄 README.md 3717
🔧 settings.gradle 94
📄 README

JabJab

Privacy-first XMPP messenger for Android.
No data harvesting. No ads. No accounts sold. Ever.

JabJab is a hard fork of Conversations — the gold-standard open-source XMPP client — extended with stickers, stories, microblogging, dynamic reactions, themes, app lock, and a built-in updater.

Download APK · Source · Website


What's new in JabJab

Everything in Conversations, plus:

🎭 Stickers

Custom sticker packs — send, receive, and create your own. Stickers are stored on your device and never sent to third parties. Uses WebP for small file sizes.

📸 Stories

Ephemeral photo and video stories that vanish after 3 days. Share moments without the algorithm pressure — no like counts, no engagement metrics. Compatible with Monocles and other pubsub-social-feed clients.

📝 Microblog

Publish long-form posts via XMPP PubSub (XEP-0277). Posts appear at blog.xmpp.tel and are federated — readable by any XMPP client that supports PubSub. Offline drafts sync automatically when you reconnect.

😄 Dynamic Reactions

React to any message with any emoji. Reactions are tracked per-message, per-account, and sync across devices.

🎨 Themes

Seven built-in themes including light and dark variants. Adjustable bubble shapes and font size.

🔐 App Lock

PIN lock with biometric unlock support. Lock the app automatically on background.

🔄 Built-in Updater

Checks for new APKs in the background and installs in one tap — no app store required.

🔀 Multi-Share

Share a file or text to multiple contacts at once from inside the app or directly from your gallery. Files are uploaded once and forwarded — no duplicate uploads.

⏩ Audio Speed

Playback speed toggle for voice messages: 1× / 1.5× / 2×.

🌐 Message Translation

Built-in translation for incoming messages — read in your language, reply in theirs.


Security

  • OMEMO end-to-end encryption (Signal protocol) — enable per conversation
  • TLS for all server connections — even without OMEMO
  • DTLS for audio/video calls
  • Hosted in Iceland · zero personal data at the server level · open source

Build

JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 ./gradlew assembleConversationsFreeDebug

APK: build/outputs/apk/conversationsFree/debug/

Optional build flags:

# With in-app update checker
-PUPDATE_SERVER_URL=https://your-update-server/

# Custom GIF API key
-PTENOR_API_KEY=your_key

Requirements: JDK 21, Android SDK (minSdk 23, targetSdk 36).


Migrating from Conversations

Go to Settings → Create Backup in Conversations, then Settings → Restore Backup in JabJab. Your accounts, contacts, and full message history transfer instantly.


Protocol support

XEP Feature
XEP-0363 HTTP File Upload
XEP-0384 OMEMO Encryption
XEP-0277 Microblog (PubSub)
XEP-0482 Pubsub Social Feed (Stories)
XEP-0449 Sticker Packs
XEP-0313 Message Archive Management
XEP-0045 Multi-User Chat
XEP-0234 Jingle File Transfer
XEP-0167 Jingle RTP (calls)

Links


License

JabJab is free software licensed under the GNU GPL v3.
Upstream Conversations © Daniel Gultsch.

Recent commits
fixed issues with sticker sharing, added info about blog...
JabJab · 2026-07-06 0d9763c5
fixed sticker upload paths, added more mime-type/extensions
JabJab · 2026-07-06 11eee094
fixed badges, translate blog posts, multi-select...
JabJab · 2026-07-06 2ad7ec65
bug fixes and improved stories
JabJab · 2026-07-05 b28f900b
public release
JabJab · 2026-07-04 fea28698
View all commits →

Built with passion for open-source software, XMPP, privacy, and security —
the belief that people deserve communication tools that serve them, not surveil them.

Dedicated to every brave man and woman who stands up against tyranny and oppression across the world.
And in memory of those who were silenced before they could speak freely.