skillfed

confluent_avro

An Avro SerDe implementation that integrates with the confluent

confluent-avro v1.8.0 83.3K downloads/30d#14,085 on PyPI22
Permissive license Abandoned released

What it is and what it does

ConfluentAvro is a Python library that implements Avro serialization and deserialization according to the Confluent wire format specification. It integrates with Confluent Schema Registry to automatically register and fetch schemas, prepending the schema ID to Avro binary data before publishing to Kafka and retrieving it during consumption. The library caches schemas locally and reuses encoder/decoder instances to optimize performance across multiple records.

The package is built on fastavro for efficient Avro encoding and requests for HTTP communication with the schema registry. It supports both key and value serialization for Kafka messages and can integrate with any Kafka client library. However, the project has not been maintained since 2020-05-25, meaning it may lack compatibility with current versions of Confluent Schema Registry, Kafka clients, or Python runtime environments.

Use it for:

  • Serialize Python dictionaries to Avro format with automatic schema registration before publishing to Confluent Kafka topics.
  • Deserialize Avro messages consumed from Kafka by fetching and caching schemas from the registry.
  • Build Kafka producer and consumer applications that enforce schema compatibility through the Confluent Schema Registry.
  • Cache schemas locally to reduce repeated registry lookups when processing high-volume Kafka streams.

Worth the install?

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

Serializes and deserializes Avro data according to the Confluent wire format, integrating with Confluent Schema Registry to manage schemas for Kafka applications.

No—not recommended for new projects. The package is abandoned (last commit 2020-05-25) and will likely have unresolved compatibility issues with modern Confluent Schema Registry, Kafka client libraries, and Python versions. For active Kafka-Avro integration, use maintained alternatives. Only consider this if you are maintaining legacy code already using it and cannot migrate.

Install

confluent-avro on PyPI

pip

pip install confluent-avro

uv

uv add confluent-avro

poetry

poetry add confluent-avro

Installing confluent_avro

Before you install

Low install friction with a pure-Python wheel. However, the package is abandoned—last commit was 2020-05-25, over 2276 days ago. No recent maintenance or updates to address compatibility issues with modern Kafka clients or schema registry versions.

License in practice

Licensed under Apache Software License (permissive). You may use, modify, and distribute the package freely, including in commercial applications, provided you retain license notices.

Quickstart

pip install confluent-avro

from confluent_avro import AvroKeyValueSerde, SchemaRegistry
from confluent_avro.schema_registry import HTTPBasicAuth

registry_client = SchemaRegistry(
    "https://myschemaregistry.com",
    HTTPBasicAuth("username", "password")
)
avroSerde = AvroKeyValueSerde(registry_client, "my-topic")
value = avroSerde.value.serialize({"field": "data"}, schema)

Requires a running Confluent Schema Registry instance and a Kafka broker; last tested against Python 3.6, 3.7, 3.8.

Verify before relying

  • Compatibility with modern Confluent Schema Registry versions and recent Kafka client libraries.
  • Whether cached schemas and exponential backoff retry logic function correctly with current infrastructure.
  • Support for Python versions beyond 3.8 or compatibility with newer fastavro releases.

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.6)
Install friction low — pure-Python wheel
Runtime dependencies 3 — requests, fastavro, python-status
Maintenance abandoned — 2,276 days since the last release
Last repo commit
First released
Downloads 83,274/month — #14,085 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: confluent_avro-1.8.0-py3-none-any.whl

Keywords: avro, kafka, confluent, schema registry

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Topic :: Software DevelopmentTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python ModulesTyping :: Typed

Tags

avro serialization kafkaconfluent schema registry clientavro serde confluent wire formatkafka avro serializer deserializerconfluent avro pythonschema registry integrationavro kafka producer consumer
kafkaavroschema-registry

More Software Development packages

typing-extensions

Provides backported and experimental type hints…

permissive · top 100 on PyPI

numpy

NumPy provides an N-dimensional array object…

permissive · top 100 on PyPI

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

distlib

Distlib provides low-level packaging utilities…

permissive · top 1,000 on PyPI

aws-glue-schema-registry

Serializes and deserializes messages using AWS…

permissive · top 15,000 on PyPI

confluent-kafka

Provides a high-performance Python client for…

permissive · top 1,000 on PyPI

kafka-schema-registry

Integrates Kafka with Confluent Schema Registry…

permissive · top 15,000 on PyPI

avro-python3

Serializes and deserializes data in Apache Avro…

permissive · top 5,000 on PyPI

fastavro

fastavro reads and writes Apache Avro files…

permissive · top 1,000 on PyPI

sentry-kafka-schemas

Provides Kafka topic definitions and JSON…

unclear · top 15,000 on PyPI

avro

Apache Avro is a data serialization system that…

permissive · top 5,000 on PyPI

kafka

A pure-Python client library for Apache Kafka…

permissive · top 15,000 on PyPI

py-avro-schema

Generates Apache Avro schemas from Python…

permissive · top 15,000 on PyPI

azure-schemaregistry-avroserializer

Serializes and deserializes Avro data using…

permissive · top 15,000 on PyPI