Jami Icon

A free and open source, distributed video, calling and screenshare platform with a focus on security. Jami is completely peer-to-peer, and has full end-to-end encryption with perfect forward secrecy for all communications, complying with the X.509 standard. Supported natively on Windows, macOS, iOS, GNU/Linux, Android and Android TV. Video quality is quite good, but very dependent on network speeds, some of the apps are lacking in features.

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 Reviews

More Secure Conference Calls

  • Jitsi Icon



    Encrypted, free and open source video calling app, which does not require creating an account/ providing any personal details. Available as a web app, and native app for Windows, MacOS, Linux, Android and iOS. You can use the public Jitsi instance, self-host your own, or use a community hosted instance.

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 Secure Conference Calls, and pick privacy-respecting software and services.
Share Jami and Awesome Privacy with your network!

View Secure Conference Calls (2)