// the find
azalea-rs/azalea
A collection of Rust crates for making Minecraft bots, clients, and tools.
Azalea is a set of Rust crates for writing Minecraft bots, clients, and tooling, built on Bevy's ECS and tracking one Minecraft release at a time. It is aimed at people who want to script bots or build custom clients in Rust and can live with an API that still changes between releases.
The crates are split by concern (protocol, physics, blocks, inventory, chat, auth), so you can pull in one piece, like the protocol parser or the physics code, without taking the whole client. The protocol crate has fuzz targets for each clientbound and serverbound state, and the client has a simulation test suite that replays packet sequences without needing a live server, which is a sensible way to test a networking library. The README is candid about gaps, listing entity pushing and sprint swimming as unimplemented under 'accurate physics', which is more useful than a vague accuracy claim.
The README warns that many parts are unfinished and will see breaking changes, and the changelog is the only migration guide, so upgrading across releases means reading diffs yourself. Only one Minecraft version is supported at a time, so every game update leaves bots broken until the maintainer catches up, and multi-version support lives in a separate project. The project is one maintainer working on it as a hobby, according to the funding note, which is a real bus-factor risk for anything you depend on in production.