Anki/proto
Damien Elmes bac05039a7 Move protobuf generation into a separate crate; write .py interface in Rust
A couple of motivations for this:

- genbackend.py was somewhat messy, and difficult to change with the
lack of types. The mobile clients used it as a base for their generation,
so improving it will make life easier for them too, once they're ported.
- It will make it easier to write a .ts generator in the future
- We currently implement a bunch of helper methods on protobuf types
which don't allow us to compile the protobuf types until we compile
the Anki crate. If we change this in the future, we will be able to
do more of the compilation up-front.

We no longer need to record the services in the proto file, as we can
extract the service order from the compiled protos. Support for map types
has also been added.
2023-06-12 09:52:00 +10:00
..
anki Move protobuf generation into a separate crate; write .py interface in Rust 2023-06-12 09:52:00 +10:00
.clang-format move protobuf into separate folder in preparation for multiple files 2021-07-09 21:02:40 +10:00
.top_level refactor protobuf handling for split/import 2021-07-10 19:17:05 +10:00
README.md Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00

Protobuf files defining the interface the frontend and backend components use to talk to each other, and how Anki stores some of the data inside its SQLite database. These files are used to generate Rust, Python and TypeScript bindings.