Skip to content

Latest commit

 

History

History
124 lines (94 loc) · 5.69 KB

README.md

File metadata and controls

124 lines (94 loc) · 5.69 KB

Awesome Kafka in Clojure

Kafka and the Confluent Platform are awesome in Clojure.

Architecture

Kafka Producers & Consumers

Kafka Connect

Kafka Streams

Projects:

Info:

KSQL

  • Nothing yet!

Avro & Confluent Schema Registry

Avro and Confluent Schema Registry can be difficult to navigate, especially for beginners, so this section includes more description.

Listed Avro libraries must support complex and nested Avro types.

  • FundingCircle/jackdaw
  • damballa/abracad
    A Clojure library for de/serializing Clojure data structures with Avro. The incumbent Avro library for Clojure. No support for GenericRecords or Confluent Schema Registry.
  • ymilky/franzy-avro
    Add-on to Franzy. Uses Abracad under the hood. (De)Serializes to Avro bytes. No support for GenericRecords or Schema Registry.
  • ovotech/kafka-avro-confluent
    Serializes to byte-array but supports Confluent AvroSerdes via custom byte assembly. Offers a Schema Registry client.
  • konukhov/kfk-avro-bridge
    Provides conversion of Clojure data structures to/from Avro GenericRecords that are compatible with the built-in Confluent serializers. Use with another library, like Abracad, to generate the Avro schema used for conversion.
  • farbetter/roe
    An Apache Avro library for Clojure and ClojureScript.
  • neilwashere
    Avro schema validation errors can be hard to debug. This lib provides some helpful tools.
  • pfeodrippe/spec-to-avro
    A work in progress to convert Clojure Specs to Avro. An incomplete work in progress but an interesting idea.
  • piotr-yuxuan/dove Infer specs from any Avro type. Think about avro->spec. Useful for generative testing or pre-serialization validation.
  • deercreeklabs/lancaster
    An Apache Avro DSL and helper library

Streaming Platforms

Management Tools

Testing Tools

Presentations

These presentations mustn't be exclusively on Kafka but should relate to Clojure's synergy with the distributed log.

License

CC0