awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
element-hq avatar

element-hq/synapse

0
View on GitHub↗
4,314 Stars·555 Forks·Python·AGPL-3.0·7 Aufrufeelement-hq.github.io/synapse↗

Synapse

Synapse ist eine Matrix-Homeserver-Implementierung, die die Infrastruktur für dezentrale Echtzeitkommunikation und Messaging bereitstellt. Es fungiert als föderierter Chat-Server, der Raumdaten und Event-Streams über unabhängige Serverinstanzen hinweg synchronisiert, um domänenübergreifende Interoperabilität zu ermöglichen.

Der Server nutzt einen Hybrid-Kern, der leistungskritische Logik in Rust mit einer Python-Orchestrierungsschicht integriert. Er verwendet eine relationale PostgreSQL-Datenbank zur Speicherung von Benutzerkonten und Gesprächsverläufen und nutzt ein Redis-basiertes Messaging-System, um Aufgaben auf horizontale Worker zu verteilen.

Das Projekt deckt ein breites Spektrum an Funktionen ab, einschließlich sicherer Identitätsverwaltung mit SAML- und OpenID-Connect-Integration, umfassender administrativer Tools für Inhaltsmoderation und Raumverwaltung sowie automatisierter Medienverarbeitung. Es enthält zudem Systeme für dezentrale Föderation, asynchrone Datenbank-Schema-Migration und Telemetrie-Export für Leistungsüberwachung.

Features

  • Communication Node Implementations - Implements a full server version of the Matrix open standard for decentralized, real-time communication.
  • Matrix Protocol Implementations - Implements the Matrix open standard for decentralized, real-time communication and cross-domain interoperability.
  • Asynchronous Database Migrations - Performs database schema updates as non-blocking background tasks to ensure high availability during migrations.
  • Communication Data Management - Implements systems for the persistence and lifecycle management of conversation history and associated media.
  • Worker Process Sharding - Distributes specific computational tasks like push notifications and federation across multiple worker processes.
  • Communication State Persistence - Uses a PostgreSQL relational database to persist user accounts, room states, and message history.
  • Relational Data Storage - Uses a PostgreSQL relational database to persist communication state and extensive event history.
  • SQLite or PostgreSQL Storage - Supports both SQLite for testing and PostgreSQL for production as interchangeable relational database backends.
  • Performance Hybrid Cores - Integrates a Rust-based performance core for CPU-intensive tasks with a Python orchestration layer.
  • Redis-Backed Scaling - Relays replication commands between the main process and workers via a Redis message broker.
  • Membership Management - Tracks and lists the rooms a user has joined, including historical membership states.
  • Decentralized Messaging Systems - Provides a decentralized communication platform that stores chat records and identities on a federated network.
  • Federated Protocols - Implements a decentralized protocol to synchronize room state and event streams across independent server instances.
  • Server Federation - Implements mechanisms for independent server nodes to synchronize data and enable cross-domain communication.
  • Asynchronous Event Loops - Utilizes a Twisted-based non-blocking event loop to manage concurrent network connections and asynchronous I/O.
  • Account Data Access - Provides secure access to global and room-specific user account data, preference settings, and secret keys.
  • User Account Management - Provides comprehensive management of user accounts, including profile modification, querying, and locking status.
  • User Account Registrations - Provides multiple pathways for creating new user accounts via client-facing toggles or secure command-line utilities.
  • Registration Flow Controls - Provides configurable controls for user registration, including email verification, captchas, and token-based onboarding.
  • User Identity Management - Implements systems for managing user profiles and resolving identities via external provider IDs, emails, and phone numbers.
  • Asynchronous Background Processors - Offloads time-consuming operations like database migrations and history purges to background processes to maintain responsiveness.
  • Request Delegation - Routes specific requests to dedicated worker processes to improve overall system responsiveness and speed.
  • State Set Optimizations - Uses specialized algorithms to calculate differences between complex state sets, reducing synchronization overhead.
  • Chat Room Administration - Provides administrative tools for managing the internal state of chat rooms, including topics and member lists.
  • Administrative Power Level Assignment - Enables assigning the highest available local power level to a specified user within a room.
  • Administrative Room Membership - Provides the ability to force local user accounts to join specific rooms using administrative privileges.
  • Room Listings - Provides paginated listings of rooms filtered by visibility, membership, or search terms.
  • Application Service Integration - Links external bots and third-party application services to the server via configuration and namespace management.
  • Permanent Media Removers - Permanently removes media files and their corresponding database records from the server based on age or specific IDs.
  • Automated Data Purging - Permanently deletes redacted events, forgotten rooms, and expired messages to optimize storage and performance.
  • Conversation Full-Text Indexes - Creates a searchable index of conversational messages to enable instant keyword lookups.
  • Expired Record Purging - Automatically removes outdated message records from the database based on defined lifetime thresholds.
  • Distributed Databases - Splits the datastore across multiple physical database nodes to improve horizontal scalability and performance.
  • Media File Storages - Manages the storage of uploaded and downloaded media files across diverse providers and local directories.
  • Schema Version Tracking - Tracks applied database schema updates via unique identifiers to ensure codebase and database compatibility.
  • Public Room Discovery - Controls the visibility and discovery of public chat rooms in the directory using specific filtering rules.
  • Hybrid Server Implementations - Employs a hybrid server architecture combining Python orchestration with performance-critical Rust logic.
  • Background Processing - Uses a background worker pattern to handle compute-intensive maintenance and data updates without blocking the main request thread.
  • Automated Room Joining - Automatically adds newly registered users to a specified list of default rooms or spaces.
  • Push Notification Managers - Calculates and sends push notifications and unread counts to clients with optional jitter.
  • Default Encryption - Automatically applies end-to-end encryption to locally created communication rooms based on predefined policies.
  • Room Access Blocking - Prevents users from joining specific rooms even if the room is not yet known to the server.
  • Room Metadata Retrieval - Retrieves room metadata including topic, avatar, encryption status, and lifecycle state.
  • Administrative Event Retrieval - Allows administrators to fetch specific events from a room regardless of their own membership status.
  • Room Member Listing - Retrieves a complete list of all user IDs belonging to a specific room.
  • Room Message Retrieval - Fetches room messages within a specified timeframe using pagination and event filters.
  • Room Removals - Implements the permanent removal of rooms with options to purge history or migrate users.
  • Room Alias Deletion - Allows removing a room from the directory to free up its alias for reuse.
  • Room State Retrieval - Retrieves current shared state events of a room with optional filtering by event types.
  • Federated Server Discovery - Implements mechanisms for servers to identify and establish connections with other peer servers in a decentralized network.
  • TURN Server Integrations - Integrates with TURN servers to ensure reliable voice and video call connectivity across different networks.
  • Event History Persistence - Removes historic communication events from the database up to a specified timestamp to manage storage.
  • Network Listeners - Defines TCP ports, bind addresses, and HTTP resources for client, federation, and administrative APIs.
  • Remote Media Caching - Caches copies of media and thumbnails from remote servers locally to reduce latency and improve access speeds.
  • Stale Cache Purging - Automatically purges local and remote cached media files that have not been accessed within a specified timeframe.
  • Well-Known Delegations - Serves well-known URIs and DNS records to allow clients to automatically discover the homeserver.
  • Server Identity Delegation - Redirects server-to-server traffic to a specific instance using HTTPS files or DNS records.
  • Partial State Synchronization - Processes partial event streams to allow immediate access to conversations before full data synchronization is complete.
  • Rate Limit Overrides - Provides administrative capabilities to adjust or disable API request limits for specific users to allow higher traffic volumes.
  • CAS Integrations - Delegates user authentication to external CAS servers to enable centralized identity management.
  • External Identity Provider Integration - Integrates with external identity providers and OpenID Connect to handle secure user login.
  • OIDC Identity Integrations - Integrates OpenID Connect, SAML, and JWT for secure, centralized user identity management.
  • Username and Password Policy Enforcements - Validates passwords against complexity criteria, including minimum length and character variety, during account creation and updates.
  • Request Rate Limiting - Implements per-second and burst limits on incoming client requests to prevent system abuse and ensure availability.
  • SAML Authentication - Supports single sign-on by connecting to external identity providers using the SAML protocol.
  • JWT Token Validators - Validates JSON Web Tokens to verify user identity and claims for passwordless access.
  • JWT Authentications - Uses signed JWTs to grant user access and maintain stateless sessions across distributed requests.
  • Database Schema Migrations - Applies sequential SQL or Python delta files to automatically update and version the database schema.
  • Worker Messaging Backends - Uses Redis as a messaging backend to relay replication commands between the main process and distributed workers.
  • Module-Based Extensions - Allows extending server functionality by integrating external packages as modules.
  • Database Change Notifications - Broadcasts notifications when database state changes to trigger responses from distributed worker processes.
  • Active User Quotas - Enforces global limits on the total number of unique active users allowed on the system within a monthly timeframe.
  • Administrative APIs - Provides authenticated programmatic interfaces for managing server operations and configurations.
  • Space Hierarchy Retrieval - Retrieves the depth-first tree structure of a space and its child rooms without requiring membership.
  • Privilege Promotions - Provides administrative operations to elevate user account permissions to grant server management privileges.
  • User Presence Monitoring - Monitors and broadcasts the real-time online or offline status of both local and remote users.

Star-Verlauf

Star-Verlauf für element-hq/synapseStar-Verlauf für element-hq/synapse

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Häufig gestellte Fragen

Was macht element-hq/synapse?

Synapse ist eine Matrix-Homeserver-Implementierung, die die Infrastruktur für dezentrale Echtzeitkommunikation und Messaging bereitstellt. Es fungiert als föderierter Chat-Server, der Raumdaten und Event-Streams über unabhängige Serverinstanzen hinweg synchronisiert, um domänenübergreifende Interoperabilität zu ermöglichen.

Was sind die Hauptfunktionen von element-hq/synapse?

Die Hauptfunktionen von element-hq/synapse sind: Communication Node Implementations, Matrix Protocol Implementations, Asynchronous Database Migrations, Communication Data Management, Worker Process Sharding, Communication State Persistence, Relational Data Storage, SQLite or PostgreSQL Storage.

Welche Open-Source-Alternativen gibt es zu element-hq/synapse?

Open-Source-Alternativen zu element-hq/synapse sind unter anderem: miguelgrinberg/microblog — This project is a social blogging application built with Flask. It provides a platform for user account management,… netlify/gotrue — GoTrue is a JWT identity provider and user management API. It functions as an OAuth 2.0 compliant server that handles… teamhanko/hanko — Hanko is an open-source identity provider and customer identity and access management system. It serves as a passkey… heartcombo/devise — Devise is a flexible authentication framework for Ruby on Rails applications. It serves as a user identity management… rustdesk/rustdesk-server — rustdesk-server is a self-hosted remote desktop server infrastructure designed to manage ID signaling and relay… matrix-org/dendrite — Dendrite is a second-generation Matrix homeserver written in Go, designed to handle room management, federation, and…

Open-Source-Alternativen zu Synapse

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Synapse.
  • miguelgrinberg/microblogAvatar von miguelgrinberg

    miguelgrinberg/microblog

    4,771Auf GitHub ansehen↗

    This project is a social blogging application built with Flask. It provides a platform for user account management, following relationships, and chronological post streams, supported by a PostgreSQL relational database. The application features a multilingual web interface with localized content and date formatting. It is designed as a dockerized web application, utilizing containerization for consistent deployment across different environments. The system integrates a variety of core capabilities, including full-text search with provider abstraction, an asynchronous task worker for backgrou

    Pythonflaskpythonwebapp
    Auf GitHub ansehen↗4,771
  • netlify/gotrueAvatar von netlify

    netlify/gotrue

    4,424Auf GitHub ansehen↗

    GoTrue is a JWT identity provider and user management API. It functions as an OAuth 2.0 compliant server that handles user registration and authentication while issuing signed JSON Web Tokens to control access to protected API resources. The service integrates external identity providers to allow users to sign in using third-party accounts. It also includes an SMTP notification service for delivering password resets, signup confirmations, and account recovery emails. The system covers broader capabilities for user account management, including the ability to update user profiles and manage c

    Goauthenticationjwtproduction
    Auf GitHub ansehen↗4,424
  • teamhanko/hankoAvatar von teamhanko

    teamhanko/hanko

    8,801Auf GitHub ansehen↗

    Hanko is an open-source identity provider and customer identity and access management system. It serves as a passkey authentication service and an OAuth and SAML SSO gateway, allowing applications to authenticate users and issue tokens via standard identity protocols. The project distinguishes itself through a strong focus on passwordless access using WebAuthn-based passkeys and email-based passcodes. It provides framework-agnostic authentication interfaces as customizable web components that can be embedded directly into web applications to handle login, registration, and profile management.

    Go2faauthenticationciam
    Auf GitHub ansehen↗8,801
  • heartcombo/deviseAvatar von heartcombo

    heartcombo/devise

    24,347Auf GitHub ansehen↗

    Devise is a flexible authentication framework for Ruby on Rails applications. It serves as a user identity management system that handles registration, sign-in, password recovery, and account confirmation. The system integrates with the Warden middleware to manage user sessions and security across various request types. The framework functions as a multi-model authentication engine, allowing for the configuration of multiple distinct user models with independent routes and access controls. It also provides a standardized interface to connect with external identity providers and third-party lo

    Ruby
    Auf GitHub ansehen↗24,347
  • Alle 30 Alternativen zu Synapse anzeigen→