/azalea

A collection of Rust crates for making Minecraft bots, clients, and tools.

Primary LanguageRustMIT LicenseMIT

Azalea

docs.rs

A collection of Rust crates for making Minecraft bots, clients, and tools.

Azalea

Currently supported Minecraft version: 1.19.4.

⚠️ Azalea is still very unfinished, though most crates are in a somewhat useable state

Docs

The "stable" documentation is available at docs.rs/azalea and the unstable docs are at azalea.matdoes.dev

Matrix/Discord

If you'd like to chat about Azalea, you can join the Matrix space at #azalea:matdoes.dev or the Discord server at discord.gg/FaRey6ytmC.

Why

This project was heavily inspired by PrismarineJS. I wanted a fun excuse to do something cool with Rust, and I also felt like I could do better than Mineflayer in some areas. Also it's named Azalea because it sounds like a cool word and this is a cool library.

Goals

  • Do everything a vanilla client can do.
  • Be intuitive and easy to use.
  • Make it easy to have many bots working at the same time.
  • Don't trigger anticheats.
  • Support the latest Minecraft version.
  • Be fast and memory efficient.

Non-goals

  • Supporting several versions of Minecraft on the same branch.
  • Bedrock edition.
  • Graphics.

Stretch goals

  • Server implementation.

Branches

There are several branches in the Azalea repository that target older Minecraft versions. It is not guaranteed that they will be up-to-date with the latest version of Azalea. If you'd like to update them or add more, please open a PR.