A collection of modules that can be used to build Minecraft servers, clients, utilities and other tools. This library focuses solely on Minecraft Java Edition.
The emphasis is on usability, ease of use and on being well tested to improve reliability and correctness.
It will probably never be as complete as I envisioned it to be, but still contains some useful modules that you can use as is or as a reference for your own projects. In the future, there may be this core library and implementations of version-specific types and protocols which build on this core library.
Helper functions for authentication with Microsoft accounts and retrieval of access tokens.
Incomplete and untested.
Types for working with Minecraft chat components.
Miscellaneous types, which are used in a lot of places.
Cryptographic primitives used for protocol encryption, signing, and signature verification.
Utilites for reading and writing binary data.
Incomplete and untested.
Types used for specifying languages and getting translation strings.
An implementation of Minecraft's named binary tag (NBT) format.
Network primitives used for building clients and servers.
Experimental, incomplete and untested.
Types and abstractions for defining blocks and items.