You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Many peer-to-peer protocols serialise request and response payload using Protocol Buffers (https://protobuf.dev), for example libp2p Identify.
Zinnia should provide a recommended best practice for creating requests and parsing responses in protobuf format.
We can recommend one of the existing JS/TS implementations like protobuf.js or protobuf-ts.
Note that Zinnia does not support ES Modules yet, see #43, so module builders would have to use a bundler like esbuild to bundle their module code + all dependencies into a single JS file for Zinnia.
Another option is to provide custom Zinnia API for encoding & decoding Protobuf messages. We can start with a low-level API to encode/decode raw messages with no .proto definitions needed and then build on top of that.
Considering our limited capacity, I think it's better to leverage an existing 3rd-party implementation and focus our effort on optimising DX of using those libraries in Zinnia.
The text was updated successfully, but these errors were encountered:
Many peer-to-peer protocols serialise request and response payload using Protocol Buffers (https://protobuf.dev), for example libp2p Identify.
Zinnia should provide a recommended best practice for creating requests and parsing responses in protobuf format.
We can recommend one of the existing JS/TS implementations like protobuf.js or protobuf-ts.
Note that Zinnia does not support ES Modules yet, see #43, so module builders would have to use a bundler like esbuild to bundle their module code + all dependencies into a single JS file for Zinnia.
Another option is to provide custom Zinnia API for encoding & decoding Protobuf messages. We can start with a low-level API to encode/decode raw messages with no
.proto
definitions needed and then build on top of that.Considering our limited capacity, I think it's better to leverage an existing 3rd-party implementation and focus our effort on optimising DX of using those libraries in Zinnia.
The text was updated successfully, but these errors were encountered: