Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If you are aware of other clients not listed here (or are the author of such a client), please add it here. Please also feel free to help fill out information on the features the client supports, level of activity of the project, level of documentation, etc.

C/C++

-------------

Robust high performance C/C++ library with full protocol support

...

https://github.com/edenhill/librdkafka

 


Kafka Version: 0.7.x, 0.8.x, 0.9.x, 0.10.x, 0.11.x
Maintainers: Magnus Edenhill

-------------

Native C++ library with protocol support for Metadata, Produce, Fetch, and Offset.


Kafka Version: 0.8.x

Maintainer: David Tompkins
License: Apache 2.0

https://github.com/adobe-research/libkafka 


-------------

C++ Header-only Kafka Client Library using Boost Asio

 


Kafka Version: 0.8.x

Maintainer: Daniel Joos
License: MIT

https://github.com/danieljoos/libkafka-asio

 


-------------

A C++11 asyncronous producer/consumer library for Apache Kafka based on boost asio


Kafka Version: 0.8.x

Maintainer: Svante Karlsson
License: Boost Software License - Version 1.0

https://github.com/bitbouncer/csi-kafka

 


-------------

libasynckafkaclient - C++ based single threaded asynchronous library


Kafka Version: 0.8.x

Maintainer: Vijay Jadhav
License: 2-clause BSD

https://github.com/GSLabDev/libasynckafkaclient 


-------------

https://github.com/quipo/kafka-cpp

Kafka Version: 0.7.x

 


-------------

Python

-------------

High performance Python client based on Librdkafka with full protocol supportMaintainer: Confluent.io
License: Apache v.2.0

https://github.com/confluentinc/confluent-kafka-python

-------------

Confluent's Apache Kafka client for Python wraps the librdkafka C library, providing full Kafka protocol support with great performance and reliability.

https://github.com/confluentinc/confluent-kafka-pythonDocs: http://docs.confluent.io/current/clients/index.html


Kafka Version:  0.8.x, 0.9.x, 0.10.x, 0.11.x

Maintainers: Confluent

License: Apache 2.0 


-------------

Pure Python implementation with full protocol support. Consumer and Producer implementations included, GZIP, LZ4, and Snappy compression supported.

http://github.com/dpkp/kafka-python


Kafka Version: 0.8.x, 0.9.x, 0.10.x, 0.11.x, 1.0.x

MaintainerMaintainer: Dana Powers
License: Apache v. 2.0 


-------------

Python driver with full protocol support, Pythonic API, and managed balanced consumer implementation. GZIP and Snappy compression supported.
https://github.com/Parsely/pykafka
Kafka Version: 0.8.x,0.9.x,0.10.x
Maintainer: Parse.ly
License: Apache v22.0

 


-------------

Protocol support for Kafka 0.7 in Python. GZip and Snappy compression supported

Kafka Version: 0.7.x

Maintainer: David Arthur
License: Apache v.2.0

https://github.com/mumrah/kafka-python/tree/0.7

-------------

Also:
https://github.com/dsully/pykafka

 


Kafka Version: 0.7.x

Maintainer:: Dan Sulley, LinkedIn
License: Apache 2.0

-------------

Python client from Disqus:
https://github.com/getsamsa/samsa

 


Kafka Version: 0.7.x

Maintainer:: Keith Bourgoin, Parse.ly
License: Apache 2.0

-------------

Python client from Urban Airship: https://github.com/urbanairship/pykafkap

 


Kafka Version: 0.7.x

-------------

Python client from Datadog: https://github.com/datadog/brod
(Producer, Simple Consumer, ZK-Consumer) 


Kafka Version: 0.7.x

-------------

...

https://github.com/Shopify/sarama

 

-------------

confluent-kafka-go: Confluent's Kafka client for Golang wraps the librdkafka C library, providing full Kafka protocol support with great performance and reliability.

The Golang bindings provides a high-level Producer and Consumer with support for the balanced consumer groups of Apache Kafka 0.9 and aboveEnhanced Go Kafka consumer and producer implementations.

Kafka Version: 0.8.x, 0.9.x,  0.10.x, 0.11.x

Maintainer: Big Data Open Source SecurityConfluent

License: Apache v2.0

https://github.com/stealthlyconfluentinc/go_kafka_clientconfluent-kafka-go

Docs: http://docs.confluent.io/current/clients/index.html 

-------------

A pure Go implementation of the low level Kafka APIPure Go implementation providing full protocol support, great performance, and support for all client facing KIPs.

Kafka Version: 0.8.x0+

Maintainer: Big Data Open Source SecurityTravis Bischel

License: Apache v2.0 MIT

kafka-go repo

Docs: https://pkg.go.dev/github.com/stealthly/siesta twmb/kafka-go/pkg/kgo

-------------


Erlang

-------------

A fast pure Go Kafka implementation with a clean API.

Kafka client library in Erlang. Full support for 0.9+ consumer protocol, very efficient producer implementation.

https://github.com/klarna/brod 


Kafka Version:  0.9.x, 0.810.x

Maintainer: OptioPay
License:
 MIT

Maintainers: Ivan Dyachkov (Klarna AB)Shi Zaiming (Klarna AB)

License: Apache 2.0https://github.com/optiopay/kafka


-------------https://github.com/nuance/kafka

A minimal, high-performance Kafka client in Erlang

https://github.com/

...

...

ekaf


Kafka Version:

...

 0.

...

8.x

-------------

Erlang

Maintainer: Helpshift
License: Apache v2


-------------

...

erlkafka is a kafka client written in erlang

https://github.com/

...

milindparikh/erlkafka.git


Kafka Version: 0.

...

7.x

...

Maintainer: 

...

PowerShell

License: Apache 2.0

...

-------------

...

--

PowerShell client supporting Producer, Consumer, Admin; plus from PowerShell it is possible to run all tools available.

Full list of available cmdlets on KNet PowerShell usage

Kafka Version: 3.6.0

Maintainer: MASES s.r.l.

License: Apache 2.0

https://github.com/

...

masesgroup/

...

Kafka Version0.8.x

Maintainer: Helpshift
License: Apache v2

 

KNet

Direct link: https://www.powershellgallery.com/packages/MASES.KNetPS


.NET

-------------

erlkafka is a kafka client written in erlang

...

KNet is a comprehensive .NET suite for Apache Kafka providing all features: Producer, Consumer, Admin, Streams, Connect, backends (ZooKeeper and Kafka).

Kafka Version:

...

3.

...

6.

...

0

Maintainer:

...

MASES s.r.l.

License: Apache 2.0

...

https://github.com/

...

 

...

masesgroup/KNet


-------------

Pure C# client with full protocol support.  Includes consumer, producer,

lower level components and gzip support (no snappy)A fully featured .NET client for Apache Kafka based on librdkafka (a fork of rdkafka-dotnet).

Kafka Version: 0.8.x, 0.9.x, 0.10.x, 0.11.x

MaintainerConfluent Inc. (original author Andreas Heider)Maintainer: James Roland 

License: Apache 2.0

https://github.com/Jrolandconfluentinc/confluent-kafka-netdotnet

 


-------------

Pure C# client with full protocol support.  Includes consumer, producer,

lower level components and gzip support (no snappy)This is a .NET implementation of a client for Kafka using C# for Kafka 0.8. It provides for an implementation that covers most basic functionalities to include a simple Producer and Consumer.


Kafka Version: 0.8.x

Maintainer: ExactTargetJames Roland 

License: Apache 2.0

https://github.com/ExactTargetDevJroland/kafka-net

 


-------------

rdkafka-dotnet is a C# client for Apache Kafka based on librdkafkaThis is a .NET implementation of a client for Kafka using C# for Kafka 0.8. It provides for an implementation that covers most basic functionalities to include a simple Producer and Consumer.

Kafka Version: 0.8.x

Maintainer:  Andreas HeiderExactTarget

License: BSD (2 clause)Apache 2.0

https://github.com/ah-ExactTargetDev/rdkafkakafka-dotnet net


-------------

.Net implementation of the Apache Kafka Protocol that provides basic functionality through Producer/Consumer classes. The project also offers balanced consumer implementation. The project is a fork from ExactTarget's Kafka-net Client. 


Kafka Version: 0.8.x, 0.9.x

MaintainerMicrosoft

License: Apache 2.0

https://github.com/Microsoft/Kafkanet 


-------------

C# client, asynchronous, all 3 compressions supported (read and write), tracks leader partition changes transparently, long time in production.

 


Kafka Version: 0.8.x

MaintainerVadim Chekan
License: Apache-2.0
https://github.com/ntent-ad/kafka4net

 


-------------

kafka-sharp - "High Performance" .NET Kafka Driver

 

Kafka Version: 0.8.x


Kafka Version: 0.8.x

MaintainerCriteo

License: Apache 2.0

https://github.com/criteo/kafka-sharp


-------------

kafunk - Fully-featured, native F# client which works on .NET Core

Kafka Version: 0.8.x, 0.9.x, 0.10.x

Maintainer: Jet.comMaintainerCriteo

License: Apache 2.0

https://github.com/criteo/kafka-sharp jet/kafunk


------------- 


Clojure

-------------

Fast kafka api for JVM languages implemented in clojure.


 

Kafka Version: 0.8.x

Maintainerhttps://github.com/gerritjvv

License: Apache 2.0

https://github.com/gerritjvv/kafka-fast


-------------

Wrapper to the Java API for interacting with Kafka


 

Kafka Version: 0.8.x

Maintainerhttps://github.com/pingles

License: Apache 2.0

https://github.com/pingles/clj-kafka/  


-------------

Kafka clojure client library


 

Kafka Version: 0.8.x

MaintainerPierre-Yves Ritschard

License: MIT

CodeDocumentation

------------- 


Ruby

-------------

Pure Karafka - Ruby , Consumer and Producer implementations included, GZIP and Snappy compression supported. Ruby 1.9.3 and up (CI runs MRI 2.0, JRuby and Rubinius)and Rails multi-threaded efficient Kafka processing framework. Based on librdkafka.


Kafka Version: 0.8.x 1.0+

Maintainer: Bob Potter Maciej Mensfeld

License: MITLGPL-3.0

https://github.com/bpotkarafka/poseidon karafka


-------------

Karafka - Microframework used to simplify Apache Kafka-based Ruby applications development.

 

WaterDrop - Standalone Karafka library for producing Kafka messages . Based on librdkafka.


Kafka Version:

...

1.0+

MaintainerMaciej Mensfeld

...

License: MIT

https://github.com/karafka/

...

waterdrop


-------------

rubyrdkafka - kaka - A Ruby Modern low-level Kafka client library for the Kafka distributed log systemRuby based on librdkafka


Kafka Version:

...

1.0+

Maintainer

...

Maciej Mensfeld

License: MIT

...

https://github.com/

...

karafka/rdkafka-ruby

...


-------------

https://github.com/acrosa/kafka-rb

Racecar – A simple framework for writing Kafka consumers in Ruby that integrates nicely with Rails. Based on ruby-kafka. 


Kafka Version: 0.79.x, 0.10.x, 0.11.x

Maintainer: Alejandro Crosa Zendesk / Daniel Schierbeck

License:: Apache 2.0-------------

Event machine client:
https://github.com/groupme/em-kafka

 

Kafka Version: 0.7.x/github.com/zendesk/racecar


-------------

DeliveryBoy – A simple way to publish messages to Kafka from Ruby applications. Based on ruby-kafka.

Kafka Version: 0.9.x, 0.10.x, 0.11.x

MaintainerZendesk / Daniel Schierbeck

License: Apache 2.0JRuby Event stream processor

https://github.com/wooga/kafkaesque

 

Kafka Version: 0.7.x

zendesk/delivery_boy

-------------

 


Node.js

-------------

The node-rdkafka library is a high------

Kafka-Node is a NodeJS client with Zookeeper integration

performance NodeJS client for Apache Kafka that wraps the native librdkafka library. All the complexity of balancing writes across partitions and managing (possibly ever-changing) brokers should be encapsulated in the library.

https://github.com/Blizzard/node-rdkafka 

Kafka Version: 0.8.x.9, 0.10

Node.js >= 4

Maintainer:  sohuBlizzard.com

License: MIThttps



://github.com/SOHU-Co/kafka-node/

 

-------------

Kafka-node is a pure JavaScript implementation for NodeJS Server with Vagrant and Docker support.Node is a NodeJS client with Zookeeper integration


Kafka Version: 0.8.x

Maintainerwurstmeistersohu.com

License: Apache 2.0MIT

https://github.com/wurstmeisterSOHU-Co/node-kafka-0.8-plus node/


-------------

NodeKafka-kafka node is a node.js wrapper for the C library librdkafka pure JavaScript implementation for NodeJS Server with Vagrant and Docker support.


Kafka Version: 0.8.x

Maintainer: Sutoiku wurstmeister
License: MITApache 2.0

https://github.com/sutoikuwurstmeister/node-kafka -0.8-plus


-------------

kafka-java-bridge is a Nodejs wrapper for the JAVA high level kafka 0.8. consumer API 


Kafka Version: 0.8.x

Maintainer: LivePersonInc

License: MIT

https://www.npmjs.com/package/kafka-java-bridge

https://github.com/LivePersonInc/kafka-java-bridge

 


-------------

Low-level protocol support in node.js.

https://github.com/cainus/Prozess
https://npmjs.org/package/prozess

 


Kafka Version: 0.7.x

Maintainers: 
Gregg Caines
Eric lee
License: MIT 


-------------

Alternate node client from Tagged
https://github.com/marcuswestin/node-kafka

Also:
https://github.com/dannycoates/franz-kafka

 


Kafka Version: 0.7.x

-------------

 


Proxy (HTTP REST, etc)

-------------

Dory is a producer daemon that supports clients in various programming languages.  Clients send messages to Dory using local interprocess communication.  Dory then takes full responsibility for reliable message delivery.  Monitoring infrastructure can query Dory's web interface for JSON-based status and data quality reports.

 


https://github.com/dspeterson/dory


Kafka Version: 0.8.x, 0.9.x, 0.10.x, 0.11.x

Maintainer:  Dave Peterson
License: Apache v.2.0

-------------

...

https://github.com/stealthly/dropwizard-kafka-http 


-------------

(Deprecated) Kafka high level Producer and Consumer APIs are very hard to implement right. Rest endpoint gives access to native Scala high level consumer and producer APIs. 


Maintainer: Sasha Klizhentas
License: Apache 2.0

https://github.com/mailgun/kafka-http

 


-------------

The Kafka REST Proxy provides a RESTful interface to a Kafka cluster.

 


Kafka Version: 0.8.x, 0.9.x, 0.10.x

MaintainerConfluent 
License: Apache 2.0

 


-------------

Kafka-Pixy is a local aggregating HTTP proxy to Kafka messaging cluster.

...

https://github.com/mailgun/kafka-pixy 


-------------

Efficient Kafka REST Proxy for producers

https://github.com/klarna/kastle

 


Kafka Version: 0.8.x

Maintainers: Ivan Dyachkov (Klarna AB)Shi Zaiming (Klarna AB)
License: Apache 2.0

 

 

...


-------------

 

JRuby wrapper for producers and consumers of the existing API

Full featured HTTP REST Proxy for Kafka in Elixir with fine grained JWT-based authentication

https://github.com/klarna/kastlex 


Kafka Version: 0.8.x

Maintainer: Joseph Lawson
License: Apache 2.0

 

https://github.com/joekiller/jruby-kafka

 

 

 Maintainers: Ivan Dyachkov (Klarna AB)Shi Zaiming (Klarna AB)
License: Apache 2.0


Perl

-------------

 

Pure Perl, Consumer and Producer implementations included. Zookeeper
integration. GZIP and Snappy compression supported.

 


Kafka Version: 0.8.x
MaintainerSergey Gladkov
License: Artistic License

https://github.com/TrackingSoft/Kafka
http://search.cpan.org/~sgladkov/Kafka/lib/Kafka.pm

 


 

 

stdin/stdout

-------------

...

Maintainer: Magnus Edenhill
License: 2-clause BSD

 


 

 

PHP

 

------------- 

PHP extension built on librdkafka

 


Kafka Version: 0.8.x

Maintainer:  Elias Van Ootegem
License: MIT 


https://github.com/EVODelavega/phpkafka

 

 


------------- 

PHP client based on librdkafka

Kafka Version: 0.8.x

 

Maintainer: Arnaud Le Blanc, for Mention.com
License: MIT

 


https://github.com/arnaud-lb/php-rdkafka

 

 


-------------

PHP library with Consumer (simple and Zookeeper-based), Producer and compression support (release notes).

https://github.com/quipo/kafka-php

 


Kafka Version: 0.7.x

Maintainer: Lorenzo Alberton
License: Apache v.2.0

...

https://github.com/dastra/log4php-kafka

 


-------------

 

 

 


Rust

-------------

 

Pure Rust implementation with support for Metadata, Produce, Fetch, and Offset requests. Supports Gzip and Snappy compression

 

 


Kafka Version: 0.8.x

Maintainer:  Yousuf Fauzan
License: MIT  MIT 

Code
Documentation 


Alternative Java

-------------

...

Krackle is an optimized Kafka client built by Blackberry. 


Kafka Version: 0.8.x

Maintainer: Blackberry

...

https://github.com/blackberry/Krackle/blob/dev/LICENSE 


Storm

-------------

Port of Apache storm-kafka to >= 0.8.0

...

https://github.com/wurstmeister/storm-kafka-0.8-plus

 


Scala DSL 

-------------

A DSL for Scala developers to produce and consume messages with Kafka.

 


Kafka Version: 0.8.x

MaintainerBig Data Open Source Security LLC
License: Apache 2.0

https://github.com/stealthly/scala-kafka

 


Clojure

-------------

https://github.com/pingles/clj-kafka

https://github.com/miniway/kafka-clj


Kafka Version: 0.7.x


Swift

-------------

Pure Swift implementation of Producer + Simple and High-Level Consumer 


Kafka Version: 0.79.x

Maintainer: Kellan Cummings, Luke Lau
License: MIT


Client Libraries Previously Supported

...