Bebop
🎷No ceremony, just code. Blazing fast, typesafe binary serialization.
Install / Use
/learn @6over3/BebopREADME
Introduction
Bebop is a high-performance data interchange format designed for fast serialization and deserialization.
<table> <tr> <td> <pre lang="c"> <code> // Example Bebop Schema struct Person { string name; uint32 age; } </code> </pre> </td> <td> <pre lang="typescript"> <code> // Generated TypeScript Code new Person({ name: "Spike Spiegel", age: 27 }).encode(); </code> </pre> </td> </tr> <tr> <td>Write concise and expressive schemas with Bebop's intuitive syntax.</td> <td>Using a generated class to persist data.</td> </tr> </table>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.
Key Features
- 🧙♂️ Supports Typescript, C#, Rust, C++, and more.
- 🐎 Snappy DX - integrate
bebopcinto 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. 👈
