skillfed

matrix-synapse

Homeserver for the Matrix decentralised comms protocol

matrix-synapse v1.158.0 88.9K downloads/30d#13,699 on PyPI4,521
License unclear AGPL-3.0-or-later OR LicenseRef-Element-Commercial Active released

What it is and what it does

Synapse is a complete Matrix homeserver—a server application that implements the Matrix open standard for decentralized, interoperable real-time communications. It lets you run your own messaging infrastructure that can federate with other Matrix servers and clients, similar to how email works across domains. You install it as a standalone application (not a library), configure it via YAML, connect it to a database, and expose it through a reverse proxy to handle client and server-to-server traffic.

The package bundles 39 runtime dependencies covering cryptography (bcrypt, pyopenssl, cryptography), async networking (twisted, treq), JSON and data handling (jsonschema, msgpack, pydantic), and monitoring (prometheus-client). It is actively maintained by Element, production-stable, and available under AGPL-3.0-or-later (or commercial license). Deployment is non-trivial—you are running a full messaging server, not integrating a library—but the project provides extensive documentation and community support.

Use it for:

  • Run a private Matrix homeserver for a team or organization to avoid centralized chat platforms
  • Deploy a federated messaging infrastructure for communities that need interoperability with other Matrix servers
  • Build a self-hosted communication backbone for applications requiring Matrix protocol compliance
  • Operate a Matrix server for regulated environments (healthcare, government) where data sovereignty is required
  • Set up a test/development Matrix network for protocol experimentation or client development

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Matrix Synapse is a homeserver implementation for the Matrix decentralized communications protocol, enabling you to run your own federated real-time messaging infrastructure.

Yes, with conditions. Install if you need to run a Matrix homeserver and can commit to operational overhead (database, reverse proxy, TLS, monitoring). The active maintenance, production-stable status, and zero known vulnerabilities support reliability. However, the dual AGPL/commercial license requires careful review before production use, the 39 dependencies and medium install friction demand a capable deployment environment, and this is a server application requiring infrastructure—not a library for embedding. Not suitable for casual experimentation without DevOps capacity.

Install

matrix-synapse on PyPI

pip

pip install matrix-synapse

uv

uv add matrix-synapse

poetry

poetry add matrix-synapse

Installing matrix-synapse

Before you install

Medium install friction due to 39 runtime dependencies including cryptographic libraries (pyopenssl, bcrypt, cryptography), async frameworks (twisted, treq), and data processing tools. Actively maintained with a release 10 days old and recent commits; production-stable status suggests operational reliability for those who can manage the dependency footprint.

License in practice

Dual-licensed under AGPL-3.0-or-later (free, copyleft) or a commercial license from Element. The AGPL requires you to share modifications if you distribute the software; commercial licensing is available for proprietary deployments. License treatment is marked unclear, so review Element's licensing terms before production use.

Quickstart

pip install matrix-synapse

from synapse.server import SynapseHomeServer
# Configure and run via YAML config file (see docs)

Requires Python 3.10.0 or later (and <4.0.0); production deployment typically requires a database (PostgreSQL recommended), reverse proxy, and TLS certificates. Not a library for embedding—it is a standalone server application.

Verify before relying

  • Actual memory and CPU requirements for small vs. large deployments
  • Whether the PyPI package alone is sufficient or if system packages/services are required
  • Performance characteristics and federation scalability limits
  • Upgrade path complexity between major versions

Package facts

License AGPL-3.0-or-later OR LicenseRef-Element-Commercial (unclear)
Python support supports the current Python release (<4.0.0,>=3.10.0)
Install friction medium — platform-specific wheel
Runtime dependencies 39 — jsonschema, rpds-py, immutabledict, unpaddedbase64, canonicaljson, signedjson, service-identity, twisted, treq, pyopenssl, pyyaml, pyasn1, pyasn1-modules, bcrypt, pillow, sortedcontainers, pymacaroons, msgpack, phonenumbers, prometheus-client, attrs, netaddr, jinja2, bleach, typing-extensions, cryptography, ijson, matrix-common, packaging, pydantic
Maintenance actively maintained — 10 days since the last release
Last repo commit
First released
Downloads 88,854/month — #13,699 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: matrix_synapse-1.158.0-cp310-abi3-manylinux_2_28_aarch64.whl; matrix_synapse-1.158.0-cp310-abi3-manylinux_2_28_x86_64.whl; matrix_synapse-1.158.0-cp310-abi3-musllinux_1_2_aarch64.whl; matrix_synapse-1.158.0-cp310-abi3-musllinux_1_2_x86_64.whl; matrix_synapse-1.158.0-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl; matrix_synapse-1.158.0-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl

Development Status :: 5 - Production/StableTopic :: Communications :: Chat

Tags

matrix homeserverdecentralized chat serverfederated messagingmatrix protocol implementationself-hosted communication serverreal-time messaging infrastructurematrix federation
federated-messagingmatrix-protocolself-hosted

More Chat packages