bebop

Crates.iobebop
lib.rsbebop
version3.1.3
sourcesrc
created_at2020-10-29 20:49:39.706616
updated_at2024-10-19 05:38:27.653044
descriptionThe Rust runtime for Bebop, a schema-based binary serialization format.
homepagehttps://docs.bebop.sh
repositoryhttps://github.com/betwixt-labs/bebop
max_upload_size
id306788
size67,170
Andrew (AndrewMD5)

documentation

README

Bebop

Bebop

No ceremony, just code.
Blazing fast, typesafe binary serialization.

Apache License Discord
Twitter

Introduction

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.

Benchmark Graphs

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 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. 👈

See You Space Cowboy...

Commit count: 986

cargo fmt