I've been working on a pure-Racket Kafka client[1] off and on (for fun) since February and it's a good amount of work. When the official protocol docs and Wireshark fail me, I usually look at librdkafka and kafka-python[2] to figure out how things are supposed to fit together. Kudos to the authors of both libraries for writing code that's easy to follow!
I think it depends whether you consider me making a model in my head of how things are supposed to fit together a "derivative work," which I don't. The codebases are vastly different, and it's clear in certain places that kafka-python has taken inspiration from librdkafka (2-clause BSD license), and that both have similarly taken inspiration from the Java client (Apache 2), which makes complete sense to me since the docs are insufficient for building a client, as I mentioned in my OP.
If you're looking for a pure C++ implementation of Kafka check RedPanda, it seems a viable option since the lack of interest Confluent showed to their open source deployment.
A few colleagues if mine made a pure rust client https://github.com/influxdata/rskafka (we had some problems with the rust bindings of the rdkafka library)
[1]: https://defn.io/2022/03/12/ann-racket-kafka/
[2]: https://github.com/dpkp/kafka-python