
ViaBedrock: Bridge Java and Bedrock Minecraft Editions
"ViaVersion addon to add support for Minecraft: Bedrock Edition servers"
RaphiMC/ViaBedrock · github.com
Ever wanted to play with friends across Java and Bedrock editions? ViaBedrock is a ViaVersion addon that promises exactly that: a bridge between the two versions. But here's the catch - it's still in very early development, and the project itself warns you not to use it for anything important yet.
What ViaBedrock Does
ViaBedrock is a plugin built on top of ViaVersion, the most popular protocol translation framework in the Minecraft community. If you're not familiar with ViaVersion, it lets older clients connect to newer servers (and vice versa) by translating packets between versions. ViaBedrock takes that same concept and applies it to the entire Java/Bedrock divide.
Imagine you're running a Java server but a bunch of your players have Bedrock clients. Or you want to test your world on both versions. ViaBedrock theoretically lets you do this by intercepting and translating the Bedrock protocol into something Java clients understand.
It's genuinely ambitious work. The project is built in Java and hosted on GitHub with 365 stars, which for something this experimental is actually solid. This license is GPL-3.0, so it's fully open source. Here's the thing though: you'll be using what's essentially an alpha version.
This isn't production software.
Why You Might Want to Try It
Cross-edition play is the main draw. Console players (PS5, Switch, Xbox) and mobile players run Bedrock Edition, while PC Java Edition is still the big modding hub. If your server community is split across both, having a bridge could be huge.
It's also useful for experimentation and testing. Want to see how a world looks on Bedrock? Curious about the protocol differences? Want to contribute to protocol documentation yourself? ViaBedrock is a working example of exactly how complex the Bedrock protocol is.
Server admins testing multi-edition setups will find this helpful. If you're planning a community server, you'll eventually want to test features across both editions - and if you're running server features like voting plugins, our Votifier Tester can help validate those work correctly across client types. Streamers might find it useful too. But I'd caution you: only do this on a test server, not something your community relies on.
Getting It Set Up
ViaBedrock comes in different flavors depending on your setup. For server admins, there's a standalone proxy version. For client-side testing, there's a Fabric mod. Let me walk through the basics.
For the proxy approach, you'll grab the latest ViaProxy dev build (a separate project that bundles ViaBedrock):
#!/bin/bash
# Download the latest ViaProxy JAR
wget https://build.lenni0451.net/job/ViaProxy/lastSuccessfulBuild/artifact/build/libs/ViaProxy-*.jar
# Run it (replace with your actual filename)
java -jar ViaProxy-x.x.x.jar
The first time you run it, you'll get a config file. From there, you configure which Bedrock server you're connecting to and which port the Java proxy listens on. Java clients then connect to your local proxy as if it were a normal Minecraft server.
If you're going the Fabric mod route, grab the latest ViaFabricPlus dev build from the CI system and drop it in your mods folder. Same concept, but client-side instead of server-side. Fair warning: both setups require you to be comfortable with Java, dev builds (which change frequently), and troubleshooting when things break. Which they'll.
What Works Right Now
The feature list in the README is surprisingly long. Basic connectivity is solid - you can ping Bedrock servers, join them as a Java client, and authenticate with Xbox Live. Chat and commands work. Chunks load, blocks render, entities spawn. You can move around, respawn, switch dimensions. All of this is basically functional.
Form GUIs work too (those popup menus Bedrock uses), plus scoreboards, titles, and bossbars display correctly. If you want to test basic world compatibility, you'll probably have a workable experience. Custom skins are partially supported, and if you're testing world design with consistent player models, our Skin Creator tool can help generate test players quickly.
But - and this is important - inventory is barely there. Block breaking and block placing are incomplete or experimental. Entity metadata isn't implemented yet. Item use is experimental. If your test involves any serious gameplay like mining, crafting, or PvP, you're going to hit walls pretty fast.
The resource pack conversion is basic but functional. You'll see most textures, though custom content might not translate perfectly. Reading through the feature list, I counted roughly 18 features marked as done or mostly done, and maybe 9-10 that are incomplete or experimental. The math is hopeful, but incomplete inventory alone is a huge limitation.
Common Gotchas and Reality Check
Let me be straight: this project's own README says "Don't report any bugs yet. There are still a lot of things which are not implemented yet." If you're thinking of using ViaBedrock on a public server, step back.
The dev builds update frequently, sometimes breaking things between versions. You'll need to check the Discord (linked on the maintainer's site) for status updates rather than relying on stable releases. This isn't something you set up once and forget about.
Xbox Live authentication is implemented, which is cool, but it adds complexity. Make sure you understand the auth flow before deploying anything. Chunk caching works, which helps performance, but you should still expect lag compared to native Bedrock or Java servers since translation happens in real time.
If you're running this on a public server, expect performance overhead. ViaVersion proxies already use extra resources compared to direct connections. ViaBedrock adds another layer of complexity on top. And honestly, most players won't tolerate the bugs and missing features.
Other Projects in the Same Space
ViaVersion itself handles Java version differences and is mature and stable. That's a better starting point if your problem is just connecting old clients to new servers. It's been battle-tested for years.
If you specifically need Bedrock support but want something more polished, there's no true alternative yet - ViaBedrock is the only public project doing this work. GeyserMC is sometimes mentioned in the same conversation, but that's a different angle. It's a full Bedrock to Java proxy that doesn't require translation at the protocol level. Less experimental, but different trade-offs entirely.
The fact that ViaBedrock exists suggests others are working on similar problems. Check back in 12 months - the landscape might look different.
RaphiMC/ViaBedrock - GPL-3.0, ★365
