awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
ag2ai avatar

ag2ai/faststream

0
View on GitHub↗
4,967 stars·320 forks·Python·apache-2.0·5 vuesfaststream.ag2.ai/latest↗

Faststream

FastStream is an asyncio message broker framework for building event-driven applications in Python. It provides a unified interface and a multi-broker messaging abstraction layer that translates generic producer and consumer calls into broker-specific APIs.

The framework features a built-in dependency injection container and uses decorators to route messages to asynchronous handler functions. It includes a documentation generator that extracts channel definitions and message formats from code to produce standardized AsyncAPI specifications.

The project supports integration with Kafka, RabbitMQ, Redis, and MQTT, covering capabilities such as horizontal consumer grouping, pluggable data serialization, and in-memory broker simulation for testing. It also allows for the integration of message handlers with web frameworks to share lifecycle management and dependencies.

Features

  • Message Brokers - Provides a Python framework for building event-driven applications with type-safe message handlers and multi-broker support.
  • Messaging Broker Emulators - Tests message handlers offline using an in-memory broker simulation.
  • AsyncAPI Generators - Generates AsyncAPI documentation directly from message handler code and schema definitions.
  • Generators - Generates interactive AsyncAPI documentation from handler code and serves it via HTTP.
  • CLI Application Launchers - Launches event-driven applications from the command line with hot reload and worker scaling.
  • Event-Driven Application Launchers - Launches event-driven applications from the command line with development features.
  • Event-Driven Application Launchers - Provides a CLI launcher with hot reload and multi-worker scaling for developing event-driven applications.
  • Broker Integrations - Integrates with multiple message brokers to publish and consume events asynchronously in event-driven applications.
  • Lifecycle Embeddings - Embeds broker lifecycle into any async web framework for seamless startup and shutdown.
  • Web Framework Lifecycle Integrations - Embeds message brokers into any HTTP web application with separate lifecycle management.
  • Message Subscription Management - Subscribes to message queues and processes each incoming message with a handler function.
  • Broker Abstractions - Provides a unified abstraction layer that decouples message producers and consumers from specific broker implementations.
  • API Documentation Generators - Automatically generates interactive AsyncAPI documentation from handler code.
  • Type-Annotation Validation - Validates message payloads against Python type annotations for data integrity.
  • Dependency Injection Containers - Provides a dependency injection container that injects handler arguments from a global context.
  • Message Payload Validators - Validates both incoming and outgoing messages against defined schemas automatically.
  • Microservices Development - Builds microservices that communicate asynchronously through message brokers.
  • In-Memory Broker Stubs - Provides an in-memory broker stub for testing message handlers without a live broker.
  • Declarative Handlers - Ships a declarative system for defining message subscribers using type annotations and dependency injection.
  • Decorator-Based Definitions - Defines functions that consume messages from queues, transform data, and produce results using decorators.
  • AsyncAPI Schema Generators - Generates AsyncAPI documents from message handler code and schemas.
  • Message Queue Registrations - Registers message broker subscribers as route handlers alongside HTTP endpoints in web applications.
  • Decorator-Based Dispatchers - Uses decorators to bind functions to message queues and process incoming events.
  • Subject Subscription Filtering - Subscribes to subjects using wildcard patterns to create flexible topic hierarchies.
  • Consumer Group Coordinators - Distributes messages across consumer groups using queue groups for load-balanced horizontal scaling.
  • Web Framework Broker Lifecycle Embeddings - Embeds message broker lifecycle into web applications for unified APIs.
  • Web Framework Lifecycle Embeddings - Embeds broker lifecycle into async web frameworks for combined HTTP and message handling.
  • At-Least-Once Delivery Guarantees - Persists messages in a durable store to survive restarts and failures, ensuring at-least-once delivery.
  • Declarative Stream Processing - Processes streaming events by consuming messages and publishing responses using declarative decorators.
  • HTTP-Triggered Publications - Sends messages to the broker from any HTTP route using context injection.
  • Router Attachments - Attaches a message broker router to any web application, combining HTTP and queue handlers.
  • AsyncAPI Documentation Hosting - Serves interactive AsyncAPI documentation endpoints for message-driven APIs.
  • Messaging - Framework for building services over Kafka, RabbitMQ, and more.

Historique des stars

Graphique de l'historique des stars pour ag2ai/faststreamGraphique de l'historique des stars pour ag2ai/faststream

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Faststream

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Faststream.
  • airtai/faststreamAvatar de airtai

    airtai/faststream

    5,234Voir sur GitHub↗

    FastStream is an asynchronous Python framework designed for building event-driven microservices. It provides a unified abstraction layer for interacting with various message brokers, enabling developers to manage event production and consumption through a consistent interface while maintaining access to native provider-specific features. The framework centers on a decorator-based routing model that binds application logic directly to broker topics, supported by a built-in dependency injection container that resolves resources at runtime. The framework distinguishes itself through its deep int

    Python
    Voir sur GitHub↗5,234
  • nats-io/nats-serverAvatar de nats-io

    nats-io/nats-server

    20,076Voir sur GitHub↗

    NATS Server is a high-performance, lightweight messaging system designed for cloud-native applications, edge computing, and distributed microservices. It functions as a distributed publish-subscribe broker that routes messages using hierarchical, dot-separated subject strings, enabling decoupled communication between services without requiring centralized broker lookups. The system supports core messaging patterns including asynchronous publish-subscribe, request-reply, and load-balanced queue processing. The platform distinguishes itself through a decentralized architecture that eliminates t

    Gocloudcloud-computingcloud-native
    Voir sur GitHub↗20,076
  • bogdanp/dramatiqAvatar de Bogdanp

    Bogdanp/dramatiq

    5,136Voir sur GitHub↗

    Dramatiq is a distributed task queue and workload manager used to offload function execution to background workers. It functions as an asynchronous task orchestrator that enables the distribution of computational tasks across a cluster using a pluggable transport layer supporting RabbitMQ and Redis. The framework provides specialized tools for complex task orchestration, including the ability to link background jobs into sequences, pipelines, and barriers. It further manages distributed concurrency through the use of shared mutexes, rate limiters, and exponential backoff retries to prevent re

    Pythondistributed-lockpythonrabbit
    Voir sur GitHub↗5,136
  • quarkusio/quarkusAvatar de quarkusio

    quarkusio/quarkus

    15,479Voir sur GitHub↗

    Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program

    Javacloud-nativehacktoberfestjava
    Voir sur GitHub↗15,479
Voir les 30 alternatives à Faststream→

Questions fréquentes

Que fait ag2ai/faststream ?

FastStream is an asyncio message broker framework for building event-driven applications in Python. It provides a unified interface and a multi-broker messaging abstraction layer that translates generic producer and consumer calls into broker-specific APIs.

Quelles sont les fonctionnalités principales de ag2ai/faststream ?

Les fonctionnalités principales de ag2ai/faststream sont : Message Brokers, Messaging Broker Emulators, AsyncAPI Generators, Generators, CLI Application Launchers, Event-Driven Application Launchers, Broker Integrations, Lifecycle Embeddings.

Quelles sont les alternatives open-source à ag2ai/faststream ?

Les alternatives open-source à ag2ai/faststream incluent : airtai/faststream — FastStream is an asynchronous Python framework designed for building event-driven microservices. It provides a unified… nats-io/nats-server — NATS Server is a high-performance, lightweight messaging system designed for cloud-native applications, edge… bogdanp/dramatiq — Dramatiq is a distributed task queue and workload manager used to offload function execution to background workers. It… quarkusio/quarkus — Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications.… rabbitmq/rabbitmq-tutorials — This project is a collection of learning resources and instructional guides for implementing asynchronous messaging… antirez/disque — Disque is a distributed message broker that manages asynchronous communication between services through in-memory job…