Bebop is a high-performance data interchange format designed for fast serialization and deserialization.
// Example Bebop Schema
struct Person {
string name;
uint32 age;
}
|
// Generated TypeScript Code
new Person({
name: "Spike Spiegel",
age: 27
}).encode();
|
Write concise and expressive schemas with Bebop's intuitive syntax. | Using a generated class to persist data. |
It combines the simplicity of JSON with the efficiency of binary formats, delivering exceptional performance. In benchmarks, Bebop outperforms Protocol Buffers by approximately 10 times in both C# and TypeScript. Compared to JSON, Bebop is roughly 10 times faster in C# and about 5 times faster in TypeScript.
Bebop provides a modern, developer-friendly experience while ensuring top-notch performance. It is the ideal choice for any application that requires efficient data serialization, especially in performance-critical scenarios.
To explore the schema language and see examples of the generated code, check out the playground.
- π§ββοΈΒ Supports Typescript, C#, Rust, C++, and more.
- πΒ Snappy DX - integrate
bebopc
into your project with ease. Language support available in VSCode. - πΒ Lightweight - Bebop has zero dependencies and a tiny runtime footprint. Generated code is tightly optimized.
- πΒ RPC - build efficient APIs with Tempo.
- βοΈΒ Runs everywhere - browsers, serverless platforms, and on bare metal.
- πΒ Extendable - write extensions for the compiler in any language.
π For more information, check out the documentation. π