Exploring collaboration opportunity: protobuf4j - Pure Java protobuf tooling via WebAssembly #3476
carlesarnal
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello Wire team!
I'm reaching out to share a project we've been working on called protobuf4j and to explore whether there might be opportunities for collaboration or shared learnings between our projects.
What is protobuf4j?
protobuf4j compiles the official protoc compiler and plugins (including grpc-java) to WebAssembly, then uses https://github.com/dylibso/chicory (a pure JVM WebAssembly runtime) to execute them as native Java bytecode.
This is at pre-MVP level, we have a working POC, and currently evaluating including it in our other projects.
This approach provides:
The main API looks like:
The project will also include utilities for (and more to come, we're currently working on it):
Why I'm reaching out
Wire has been an inspiration - you've built an impressive, independent implementation of Protocol Buffers that generates beautiful, idiomatic code for Java/Kotlin/Swift. Your approach of having a pure Java/Kotlin implementation has clear advantages.
I wanted to share protobuf4j because:
Questions for the Wire team
I want to be clear: I'm not proposing that protobuf4j replace Wire - they solve problems differently. Wire's code generation and developer experience are exceptional. I'm genuinely curious whether there's synergy here or valuable feedback you might share.
The project is still a work in progress, but the core functionality is operational. You can find it at: https://github.com/roastedroot/protobuf4j
Thank you for taking the time to read this, and for all the great work on Wire over the years!
Beta Was this translation helpful? Give feedback.
All reactions