Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/betwixt-labs/bebop
🎷No ceremony, just code. Blazing fast, typesafe binary serialization.
https://github.com/betwixt-labs/bebop
c-sharp compiler cpp dart deserialization javascript json marshalling real-time rpc rust serialization typescript zero-copy
Last synced: 2 days ago
JSON representation
🎷No ceremony, just code. Blazing fast, typesafe binary serialization.
- Host: GitHub
- URL: https://github.com/betwixt-labs/bebop
- Owner: betwixt-labs
- License: apache-2.0
- Created: 2020-06-22T08:20:40.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-10-19T05:30:30.000Z (3 months ago)
- Last Synced: 2024-10-29T15:39:53.440Z (3 months ago)
- Topics: c-sharp, compiler, cpp, dart, deserialization, javascript, json, marshalling, real-time, rpc, rust, serialization, typescript, zero-copy
- Language: C#
- Homepage: https://bebop.sh/
- Size: 101 MB
- Stars: 1,927
- Watchers: 15
- Forks: 39
- Open Issues: 25
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.TXT
Awesome Lists containing this project
README
## 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](https://user-images.githubusercontent.com/1297077/235745675-fc8a18e2-361f-4b7b-b9c9-47155e511b0a.png)
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](https://play.bebop.sh/).
### Key Features
- 🧙♂️ Supports [Typescript](https://docs.bebop.sh/guide/getting-started-typescript/), [C#](https://docs.bebop.sh/guide/getting-started-csharp/), [Rust](https://docs.bebop.sh/guide/getting-started-rust/), C++, and more.
- 🐎 Snappy DX - integrate `bebopc` into your project with ease. Language support available in [VSCode](https://marketplace.visualstudio.com/items?itemName=betwixt.bebop-lang).
- 🍃 Lightweight - Bebop has zero dependencies and a tiny runtime footprint. Generated code is tightly optimized.
- 🌗 RPC - build efficient APIs with [Tempo](https://docs.bebop.sh/tempo/).
- ☁️ Runs everywhere - browsers, serverless platforms, and on bare metal.
- 📚 Extendable - write extensions for the compiler [in any language](https://docs.bebop.sh/chords/what-are-chords/).**👉 For more information, check out the [documentation](https://docs.bebop.sh). 👈**
[_See You Space Cowboy_...](https://www.youtube.com/watch?v=u1UZHXB_r6g)