Jami Icon

P2P encrypted chat network with cross-platform GNU client apps. Jami supports audio and video calls, screen sharing, conference hosting and instant messaging.

Open Source

Jami Source Code




This (mirror) repo groups all parts of Jami.





16 Feb 16

Last Updated

13 May 24

Latest version


Primary Language



83,058 KB







Language Usage

Language Usage

Star History

Star History

Recent Commits

  • Pierre NICOLAS (23 Nov 23)

    add sponsor button on gitHub repo GitLab: https://git.jami.net/savoirfairelinux/jami-client-android/-/issues/1459 Change-Id: I21a7e8ac8227c95b8bd467fe0d161bac903a4e78

  • Aline Gondim Santos (09 Dec 22)

    windows build: remove toolset option and update VSNASM and VSYASM Change-Id: I23faac23c0a520283caaaea73b30313b551ab54a

  • Jerome Lamy (26 Oct 22)

    build: fix arch missing qt dependencies Add qt6 missing dependencies to perform build on arch. Remove non-existent qt6 library not part of the arch repo. Change-Id: Iebec9927b8e4e536bb5115dcc579b91b55a3fe13

  • Amin Bandali (18 Oct 22)

    snap: fix recently-broken apps/jami/autostart metadata Change-Id: I1f5b658bc48ab72a5cf60ef5c5c84f0b634d3f78

  • Sébastien Blin (17 Oct 22)

    packaging: add ubuntu 22.10 Change-Id: Icbea98bd8a47c941c159f1f48398109450b50ed7

  • Sébastien Blin (14 Oct 22)

    packaging: add fedora 37 Update repo file and update jami-qt.spec to follow name changes Change-Id: Iec616c3ae7c33c9c443954e15a8c5a2c2d63f964

  • Amin Bandali (07 Oct 22)

    packaging: jami-qt to jami rename The jami-qt executable has been renamed to jami: https://review.jami.net/c/jami-client-qt/+/21906 Change-Id: Ibfae8f9cbfefa47eae3af1a2ad03f2331e306c11

  • Sébastien Blin (06 Oct 22)

    opensuse: refresh repository before build So that every packages are correctly updated https://git.jami.net/savoirfairelinux/jami-packaging/-/issues/123 Change-Id: Ifba60362e656b185fd403dc2055d306e96aadb80

  • Sébastien Blin (08 Sept 22)

    packaging: libring to libjami rename, addition of pkg-config file Change-Id: I425fd9fdb86e9f35ce652f77bc3190322322e528

  • Amin Bandali (04 Oct 22)

    Makefile: Include SortFilterProxyModel's sources in release tarball. Change-Id: Ia6364b47722feabe8fd8cd88795bebf332643fd7

  • Maxim Cournoyer (01 Aug 22)

    build.py: Streamline and update dependencies, build script. Remove the GNOME dependencies and have the --qt argument always require a value when used (exclusively to specify a Qt installation prefix). * build.py (ZYPPER_CLIENT_GNOME_DEPENDENCIES): Delete variable. (ZYPPER_CLIENT_QT_DEPENDENCIES): Rename to... (ZYPPER_CLIENT_DEPENDENCIES): ... this. (DNF_CLIENT_GNOME_DEPENDENCIES): Delete variable. (DNF_CLIENT_QT_DEPENDENCIES): Rename to... (DNF_CLIENT_DEPENDENCIES): ... this. (APT_DEPENDENCIES): Delete 'gnome-icon-theme-symbolic'. (APT_CLIENT_GNOME_DEPENDENCIES): Delete variable. (APT_CLIENT_QT_DEPENDENCIES): Rename to... (APT_CLIENT_DEPENDENCIES): ... this. (PACMAN_CLIENT_GNOME_DEPENDENCIES): Delete variable. (PACMAN_CLIENT_QT_DEPENDENCIES): Rename to... (PACMAN_CLIENT_DEPENDENCIES): ... this. (run_dependencies): Remove usage of args.gnome. Streamline use of --qt; now it's only used to specify a custom Qt prefix. (run_uninstall): Get rid of CLIENT_SUFFIX, adjusting users accordingly. (run_install): Delete '-c' option of install script. (run_run): Delete hacks used to build the now-deprecated client-macos on macOS. Get rid of client_suffix. Adjust client path to run. (run_stop): Get rid of suffix. (execute_script): Test falsy values as intended. (parse_args): Delete '--gnome' argument. Adjust doc of '--qt'. (main): Get rid of 'parsed_args.gnome'. * guix/manifest.scm: Streamline and update dependencies. * scripts/install.sh: Remove '-c' option. Remove conditional branches handling GNOME client. * guix/channels.scm: New file. Change-Id: I26898c3331467bfc4ab63d3e9df1d50560c287c2

  • Maxim Cournoyer (19 Jul 22)

    Jenkinsfile: Also push release commits to stable branch. This will make it easier to follow the history when checking out the stable branch. * Jenkinsfile: Push both tags and commits when publishing to the stable channel. Change-Id: Idb7b9485b80c9599cf0e5e5f81b8573b69dba652

  • Andreas Traczyk (14 Sept 22)

    misc: init client-qt SortFilterProxyModel submodule Change-Id: I445c697a679f00a0640fa4c51114e88b31ebca6e

  • Maxim Cournoyer (02 Aug 22)

    Makefile: Fix Guix-generated debian bundles (deb-packs). * Makefile (SUPPORTED_GNU_ARCHS): Remove i686; qtbase 6 doesn't build for it. (output): Delete the store output after copying the archive, to avoid accumulating too much cruft under /gnu/store. * guix/guix-pack-manifest.scm: Adjust comment. Rename "libring" to "libjami". Delete libringclient related variables. Rename jami-qt to jami. (jami-with-certs): Express more concisely via G-Expressions and search-input-file or search-input-directory. Change-Id: I37f1482ed79599536fb42818ef32f4861a32c1da

  • Amin Bandali (16 Aug 22)

    snap: use exported credentials from 'SNAPCRAFT_STORE_CREDENTIALS' The old 'login --with' method has been deprecated and is no longer supported. Switch to the new method of using a previously-exported credential, by reading it from the 'SNAPCRAFT_STORE_CREDENTIALS' environment variable. https://snapcraft.io/docs/snapcraft-authentication#heading--using Change-Id: Icd3f0716f4f82df62891cc71dc7e94c92eeff558

  • Sébastien Blin (24 Aug 22)

    suse: add openssl-devel (fix lookup) Change-Id: Ie4056171ded6ded9c1360a46b436c11be44560d7

  • Sébastien Blin (19 Aug 22)

    packaging: add opensuse leap 15.4 Change-Id: I1b1d4b68cfa7feff8577bdba90b0afa07c43df07

  • Sébastien Blin (19 Jul 22)

    snap: update to core22 + core18 is nearly EOL + use core22 + Fix blue video https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/758 Change-Id: I1576b6adee1a7171659f7927a39b8965a567d3ce

  • Tobias Hildebrandt (10 Aug 22)

    misc: remove invisible character from Makefile Change-Id: I5c09e31bbabcb1d75e27dd3574ebcf83122d56fb

  • Amin Bandali (26 Jul 22)

    debian: build GnuTLS --without-zstd on ubuntu_18.04 New versions of GnuTLS need zstd v1.3.5 or later due to their use of ZSTD_CLEVEL_DEFAULT, but ubuntu_18.04 only has v1.3.3, which is not new enough. So we build GnuTLS without it on ubuntu_18.04. Change-Id: I4128676f2ac750aa77bc56726ef57f8bb3e871e2

  • Sébastien Blin (26 Jul 22)

    debian: use system dbus-c++ library on debian_unstable Change-Id: I631e0c0da846b00a35db30a8b9f5ac18db5e4d9e

  • Sébastien Blin (25 Jul 22)

    packaging: remove EOL distributions (ubuntu 21.* & fedora < 35) Change-Id: Ib251f8c4e0a48673e904298df2b260febc4fd235

  • Andreas Traczyk (19 Jul 22)

    scripts: remove lrc build for Windows script - also uses the renamed build scripts for the client-qt project Change-Id: Ic2fd45555edfe8b670b35c494be5a2d38430b4cd

  • Sébastien Blin (14 Jul 22)

    opensuse: build qtmultimedia some gstreamer plugins were missing causing jami-qt to not launch Change-Id: Ib3b07344f6a9fc8b766541bb4e30143abc3df5b1

  • Amin Bandali (12 Jul 22)

    packaging: help CMake pick the right GCC on opensuse-leap_15.3 Change-Id: I27b88d85d49e9d8ec276017ba1f0d1611ab0b24c

  • Amin Bandali (11 Jul 22)

    build: Make sure the 'hooks' directory for each submodule exists git-init may not create the hooks directory with the default sample hooks in some scenarios, for example if the user has set the init.templateDir configuration option in their global git config, and if that directory does not include a hooks subdirectory then no hooks directory will be created by git-init, including for clones and submodule initializations. Change-Id: I09ce586fd36d3db9224bbbeed5d7721d6635ea7b

  • Sébastien Blin (06 Jan 22)

    packaging: fix snapcraft.yml and remove deprecated submodules Change-Id: I351d4c964967340277891b7e541e37615304f80c

  • Amin Bandali (29 Jun 22)

    build: drop vestigial 'supported Qt distro' check This check was added in 5ec47bc3b231a8397a25b19dd1411899e922113c about two years ago when client-qt was just beginning to be ported to GNU/Linux and could not be readily/easily built on GNU/Linux systems. This removal should also fix/avoid the recently-introduced logic bug that broke --distribution=android. Change-Id: Ia9ab9e37b9d9cfd2f7a2a57931bbd5bf6f4d56bb

  • Amin Bandali (02 Jun 22)

    packaging: Adapt to client-qt vendoring libjamiclient. For both deb and rpm make jami-libclient a transitional package that does not have any dependencies and that the user can safely remove. The jami-libclient package can then be dropped later into the future; perhaps in a year or so from now. Change-Id: I53d7cb89a40282acec7b4b0aa7930b1a52835a1b

  • Tobias Hildebrandt (20 Jun 22)

    format.sh: only format real source files ignore files that contain a C++ extension somewhere in their filename but end with a different extension Change-Id: Icbac5ace9d6e0eb4f7386751cb565e16045f97f4

Jami Website



Jami - the distributed and open source communication platform


Does not redirect

Security Checks

All 66 security checks passed

Server Details

  • IP Address
  • Hostname jami.net
  • Location Montreal, Quebec, Canada, NA
  • ISP OVH Hosting Inc.
  • ASN AS16276

Associated Countries

  • CA
  • FR

Saftey Score

Website marked as safe


Blacklist Check

jami.net was found on 0 blacklists

  • ThreatLog
  • OpenPhish
  • PhishTank
  • Phishing.Database
  • PhishStats
  • URLhaus
  • RPiList Not Serious
  • AntiSocial Blacklist
  • PhishFeed
  • NABP Not Recommended Sites
  • Spam404
  • CRDF
  • Artists Against 419
  • CERT Polska
  • PetScams
  • Suspicious Hosting IP
  • Phishunt
  • CoinBlockerLists
  • MetaMask EthPhishing
  • EtherScamDB
  • EtherAddressLookup
  • ViriBack C2 Tracker
  • Bambenek Consulting
  • Badbitcoin
  • SecureReload Phishing List
  • Fake Website Buster
  • TweetFeed
  • CryptoScamDB
  • StopGunScams
  • ThreatFox
  • PhishFort

Website Preview

Jami Android App

Update Info

  • App Jami
  • Creation Date 09 Oct 23
  • Last Updated 05 Dec 23
  • Current Version 20231002-02


No trackers found


  • Foreground Service Camera
  • Access Network State
  • Foreground Service Data Sync
  • Manage Own Calls
  • Bluetooth
  • Vibrate
  • Foreground Service
  • Foreground Service Remote Messaging
  • Modify Audio Settings
  • Write Epg Data
  • Write Contacts
  • Read Profile
  • Post Notifications
  • Wake Lock
  • Internet
  • Receive Boot Completed
  • Access Coarse Location
  • Use Full Screen Intent
  • Access Fine Location
  • Foreground Service Location
  • Read Epg Data
  • Record Audio
  • Dynamic Receiver Not Exported Permission
  • Read Contacts
  • Foreground Service Microphone
  • Change Wifi State
  • Access Wifi State
  • Camera

Jami iOS App

App Info


Jami, a GNU package, is a universal and distributed peer to peer communication software. Jami respects and upholds the freedom and privacy of its users. 100 % free universal software. · Create a completely anonymous account. · Communicate freely with Jami: - send text messages - send audio and video messages - make audio and video calls - share pictures and media files · Use your Jami account on multiple devices! · Functions as a SIP client. Take advantage of the universal communications technology of Jami with its portable library. There are plenty of ways to help us, check out https://jami.net/en/contribute For more information, visit https://jami.net Jami is published under the GPL license, version 3 or higher. Copyright © Savoir-faire Linux inc.


Rated 4.5 out of 5 stars by 26 users

Version Info

  • Current Version 3.65
  • Last Updated 13 Mar 24
  • First Released 28 Dec 17
  • Minimum iOS Version 14.5
  • Device Models Supported 93

App Details

  • IPA Size 77.82 Mb
  • Price Free (CAD)
  • Age Advisory 4+
  • Supported Languages 36
  • Developer Savoir-Faire Linux Inc
  • Bundle ID com.savoirfairelinux.ring


Jami Reviews

More P2P Messaging

  • Oxen (previously Loki) is an open source set of tools that allow users to transact and communicate anonymously and privately, through a decentralised, encrypted, onion-based network. Session is a desktop and mobile app that uses these private routing protocols to secure messages, media and metadata.

  • Tor-based Android app for P2P encrypted messaging and forums. Where content is stored securely on your device (not in the cloud). It also allows you to connect directly with nearby contacts, without internet access (using Bluetooth or WiFi).

    Open Source
  • Desktop instant messenger, that uses the Tor network to rendezvous with your contacts without revealing your identity, location/ IP or meta data. There are no servers to monitor, censor, or hack so Ricochet is secure, automatic and easy to use.

  • Open source, encrypted, distributed chat network, with clients for desktop and mobile - see supported clients. Clearly documented code and multiple language bindings make it easy for developers to integrate with Tox.

About the Data: Jami


You can access Jami's data programmatically via our API. Simply make a GET request to:


The REST API is free, no-auth and CORS-enabled. To learn more, view the Swagger Docs or read the API Usage Guide.

About the Data

Beyond the user-submitted YAML you see above, we also augment each listing with additional data dynamically fetched from several sources. To learn more about where the rest of data included in this page comes from, and how it is computed, see the About the Data section of our About page.

Share Jami

Help your friends compare P2P Messaging, and pick privacy-respecting software and services.
Share Jami and Awesome Privacy with your network!

View P2P Messaging (5)