Protocol Laboratory is a community-driven organization focused on implementing a wide range of protocols in various programming languages. Our goal is to fill the gaps where certain programming languages lack support for specific protocols, making it easier for developers to build applications using these protocols.
The world of software development is constantly evolving, and new protocols are being introduced all the time. Unfortunately, not all programming languages support every protocol out of the box. This can make it difficult for developers to use these protocols in their applications, especially if they are working with a language that doesn't have built-in support.
That's where Protocol Laboratory comes in. Our community of developers is dedicated to implementing protocols in different programming languages, ensuring that developers have access to the tools they need to build powerful, protocol-based applications.
At Protocol Laboratory, we focus on implementing a wide range of protocols in various programming languages. Some of the protocols we have implemented include:
- Kafka
- Sms protocols(cmpp, cngp, sgip, smgp, smpp)
We also work on other protocols that are less well-known but still important for certain applications.
Our community is always looking for new protocols to implement, and we welcome contributions from developers who are interested in helping us expand our offerings.
- bookkeeper-admin-go Go client library for the Apache Bookkeeper Admin API.
- bookkeeper-admin-java Java client library for the Apache Bookkeeper Admin API.
- bookkeeper-client-go Go client for bookkeeper.
- bookkeeper-codec-java helpful codec utilities for bookkeeper, typically used in troubleshooting or lightweight decode/encode.
- bookkeeper-codec-go bookkeeper protocol lightweight decode/encode.
- coap-simulator-java Coap simulator based on Java.
- coap-simulator-swing Coap simulator based on Swing.
- elasticsearch-client-java Elasticsearch Java client
- ignite-client-python Python client for Apache Ignite
- ignite-client-rust Rust client for Apache Ignite
- ignite-http-client Java http client for Apache Ignite
- kafka-client-netty Kafka client implemented with netty.
- kafka-codec-go Implementation of Kafka protocol client and server codec using Go.
- kop-proxy-go Kafka server implemented with Go.
- mqtt-broker-java Mqtt broker java implementation for education purpose.
- netty-codec-mysql netty codec for MySQL protocol.
- netty-codec-postgre netty codec for PostgreSQL protocol.
- prom-api-client simple okhttp wrapper for prometheus api.
- pulsar-admin-dart Dart client library for the Apache Pulsar Admin API.
- pulsar-admin-go Go client library for the Apache Pulsar Admin API.
- pulsar-admin-java Java client library for the Apache Pulsar Admin API.
- pulsar-admin-python Python client library for the Apache Pulsar Admin API.
- pulsar-admin-rust Rust client library for the Apache Pulsar Admin API.
- pulsar-admin-ts Typescript client library for the Apache Pulsar Admin API.
- pulsar-codec-go implementation of Pulsar protocol client and server codec using Go.
- pulsar-proxy-go lightweight pulsar proxy implemented by Go.
- pulsar-proxy-java helpful codec utilities for pulsar, typically used in troubleshooting or lightweight decode/encode.
- netty-codec-sms Netty SMS codec, support cmpp, cngp, sgip, smgp, smpp protocol.
- sms-client-java Sms client based on netty, support cmpp, cngp, sgip, smgp, smpp protocol.
- sms-server-java Sms server based on netty, support cmpp, cngp, sgip, smgp, smpp protocol.
- sms-server-simulator-javafx Sms server simulator based on JavaFX.
- sms-server-simulator-swing Sms server simulator based on Swing.
- zookeeper-client-go zookeeper client implemented with Go.
If you have any questions or feedback about Protocol Laboratory, you can reach us through the following channels:
We look forward to hearing from you!