FastProto is a high-performance serialization/deserialization library designed for binary communication protocols. By defining complex byte stream structures with simple annotations, it enables Java developers to read and write custom binary packets in the most natural way for scenarios such as IoT, automotive systems, industrial control and energy metering.
@Checksum with CRC8/16/32/64, LRC, XOR.import org.indunet.fastproto.FastProto;
import org.indunet.fastproto.annotation.UInt8Type;
public class Packet {
@UInt8Type(offset = 0) int id;
}
byte[] bytes = new byte[]{1};
Packet p = FastProto.decode(bytes, Packet.class);
byte[] out = FastProto.encode(p, 1);
Read the Quick Start and core guides to begin:
Maven
<dependency>
<groupId>org.indunet</groupId>
<artifactId>fastproto</artifactId>
<version>3.12.1</version>
</dependency>
Gradle
implementation "org.indunet:fastproto:3.12.1"
FastProto is released under the Apache License 2.0. Commercial‑friendly and widely adopted.
Source code on GitHub. Artifacts on Maven Central.