Difference between revisions of "Library List"
Jump to navigation
Jump to search
(add minestom scratch) |
|||
(147 intermediate revisions by 68 users not shown) | |||
Line 1: | Line 1: | ||
{{ToolsNavbox}} | {{ToolsNavbox}} | ||
− | This is a rather incomplete list of Minecraft related libraries currently in development. | + | This is a rather incomplete list of Minecraft related libraries finished or currently in development. |
{| class="wikitable sortable" style="width: auto; text-align: center;" | {| class="wikitable sortable" style="width: auto; text-align: center;" | ||
|-style="background:#eee" | |-style="background:#eee" | ||
Line 9: | Line 9: | ||
!License | !License | ||
!Last Version Supported | !Last Version Supported | ||
+ | |- | ||
+ | ! [https://github.com/Minestom/Minestom/tree/lib-module/scratch Minestom Scratch] | ||
+ | | Leverage Minestom's utilities to create a custom server with your own control flow. | ||
+ | | [https://github.com/Minestom/Minestom/graphs/contributors Contributors] | ||
+ | | {{Java}} | ||
+ | | [https://www.apache.org/licenses/LICENSE-2.0 Apache 2.0] | ||
+ | | {{yes|1.21}} | ||
+ | |- | ||
+ | ! [https://github.com/FlorianMichael/WaybackAuthLib WaybackAuthLib] | ||
+ | | Addon for Mojang's AuthLib to support Yggdrasil authentication again | ||
+ | | [https://github.com/FlorianMichael FlorianMichael/EnZaXD] | ||
+ | | {{Java}} | ||
+ | | [https://www.apache.org/licenses/LICENSE-2.0 Apache 2.0] | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/RaphiMC/MinecraftAuth MinecraftAuth] | ||
+ | | Simple and easy to use Microsoft authentication library (Java and Bedrock support). Implements 4 login flows (device code, credentials, JavaFX WebView window and local webserver), tokens serialization and tokens refreshing. | ||
+ | | [https://github.com/RaphiMC RK_01/RaphiMC] | ||
+ | | {{Java}} | ||
+ | | {{LGPL}} | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/Lenni0451/MCPing MCPing] | ||
+ | | A simple library to ping minecraft servers (Supports Bedrock and Java Edition) | ||
+ | | [https://github.com/Lenni0451 Lenni0451] | ||
+ | | {{Java}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|b1.8-1.20.4}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/Lenni0451/MCStructs MCStructs] | ||
+ | | Java library that provides parser and implementations of NBT, SNBT, Text component and other minecraft data structures | ||
+ | | [https://github.com/Lenni0451 Lenni0451] | ||
+ | | {{Java}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.7-1.20.4}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/Defective4/Minecraft-MS-Authenticator Minecraft-MS-Authenticator] | ||
+ | | A versy simple Microsoft authentication library with device code flow | ||
+ | | [https://github.com/Defective4 Defective4] | ||
+ | | {{Java}} | ||
+ | | [http://www.apache.org/licenses/LICENSE-2.0.html Apache V2] | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/psu-de/MineSharp MineSharp] | ||
+ | | A high-level API to create Minecraft Bots or interact with the fully implemented minecraft protocol. | ||
+ | | [https://github.com/psu-de psu-de] | ||
+ | | {{C sharp}} | ||
+ | | {{GPLv3}} | ||
+ | | {{yes|1.18 - 1.19.4}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/CopperPenguin96/SmartNbt SmartNbt] | ||
+ | | .NET Library for easy, simple, straightforward saving/loading of NBT files and data. Based on mstefarov's fNbt. | ||
+ | | [https://github.com/CopperPenguin96 CopperPenguin96] | ||
+ | | {{C sharp}} | ||
+ | | LGPLv3 | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/SpockBotMC/cpp-nbt cpp-nbt] | ||
+ | | Header-only NBT serializer for modern C++ | ||
+ | | [https://github.com/nickelpro nickelpro] | ||
+ | | {{C++}} | ||
+ | | [https://en.wikipedia.org/wiki/Zlib_License zlib] | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/iBuyMountainDew/nbt nbt] | ||
+ | | Flexible and intuitive library for reading and writing Minecraft's NBT format on the JVM, with emphasis on custom tags. | ||
+ | | [https://github.com/iBuyMountainDew iBuyMountainDew] | ||
+ | | {{Java}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/Tnze/go-mc go-mc] | ||
+ | | Go library of network protocol, NBT, Yggdrasil, mca file and RCON and so on. | ||
+ | | [https://github.com/Tnze Tnze] | ||
+ | | [https://golang.org/ Go] | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.17-All}} | ||
+ | |- | ||
+ | ! [https://github.com/Twister915/mcproto-rs mcproto-rs] | ||
+ | | Rust library that implements the Minecraft protocol (serialize/deserialize) and defines abstractions/macros to implement any prior or future version of the protocol. | ||
+ | | [https://github.com/Twister915 Joey (Twister915)] | ||
+ | | [https://www.rust-lang.org/ Rust] | ||
+ | | [https://www.apache.org/licenses/LICENSE-2.0 APACHE 2.0] | ||
+ | | {{yes|1.15.2}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/Zerite/CraftLib CraftLib] | ||
+ | | Kotlin library that aims to wrap the entire Minecraft codebase. Currently supports protocol, chat and NBT. Will support the Mojang REST API, bot creation, launching, RCON and regions. | ||
+ | | [https://github.com/Zerite Zerite] | ||
+ | | [https://kotlinlang.org Kotlin] | ||
+ | | [http://www.gnu.org/copyleft/lgpl.html LGPL] | ||
+ | | {{yes|1.7.x, 1.8.x}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/apotter96/GemBlocks GemBlocks] | ||
+ | | C# library that easily saves/loads/generates worlds. Currently only has flatgrass. More to come. Based on [https://github.com/MorbZ/J2Blocks MorbZ's J2Blocks] (translated from java to C#). | ||
+ | | [https://github.com/apotter96 apotter96] | ||
+ | | {{C sharp}} | ||
+ | | MIT | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | |- | ||
+ | ! [https://github.com/AlphaBs/CmlLib.Core CmlLib.Core] | ||
+ | | .NET Minecraft Launcher Library. Installing and Launching all version including forge, Yggdrasil Authentication, with crossplatform | ||
+ | | [https://github.com/AlphaBs AlphaBs] | ||
+ | | {{C sharp}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | ! [https://github.com/Toranktto/CraftProtocol CraftProtocol] | ||
+ | | Open source partial implementation of Minecraft network protocol and NBT in Python 2.7. | ||
+ | | [https://github.com/Toranktto Toranktto] | ||
+ | | {{Python}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.8.x, 1.10.x, 1.12.2}} | ||
+ | |- | ||
+ | ! [https://github.com/JoshuaDoes/go-yggdrasil go-yggdrasil] | ||
+ | | Allows usage of Mojang's Yggdrasil authentication system in Go | ||
+ | | [https://joshuadoes.com JoshuaDoes] | ||
+ | | [https://golang.org/ Go] | ||
+ | | {{MIT}} | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://github.com/McEx/McProtocol McProtocol] | ||
+ | | Packets, NBT, Login, Proxy | ||
+ | | hansihe | ||
+ | | [http://elixir-lang.org/ Elixir] | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.9.2}} | ||
+ | |- | ||
+ | ! [https://github.com/samcarsonx/yggdrasil-py yggdrasil-py] | ||
+ | | Open-source Python 3.6+ wrapper for the Mojang Yggdrasil authentication service. | ||
+ | | [https://github.com/samcarsonx Sam Carson (samcarsonx)] | ||
+ | | {{Python}} | ||
+ | | {{MIT}} | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://github.com/hawezo/MojangSharp MojangSharp] | ||
+ | | .NET wrapper for Mojang API | ||
+ | | [https://github.com/hawezo Enzo Innocenzi (Hawezo)] | ||
+ | | {{C sharp}} | ||
+ | | {{Apache}} | ||
+ | | {{yes|All}} | ||
|- | |- | ||
! [https://github.com/SirCmpwn/Craft.Net Craft.Net] | ! [https://github.com/SirCmpwn/Craft.Net Craft.Net] | ||
| .NET Minecraft client, server, and data manipulation library | | .NET Minecraft client, server, and data manipulation library | ||
− | | Drew DeVault (SirCmpwn) | + | | [https://github.com/SirCmpwn Drew DeVault (SirCmpwn)] |
| {{C sharp}} | | {{C sharp}} | ||
| {{MIT}} | | {{MIT}} | ||
− | | {{ | + | | {{yes|1.7.5}} |
+ | |- | ||
+ | ! [https://github.com/dividuum/fastmc fastmc] | ||
+ | | Python 2.7 packet parser/writer & utility library | ||
+ | | [http://dividuum.de Florian Wesch (dividuum)] | ||
+ | | {{Python}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.7/1.8}} | ||
+ | |- | ||
+ | ! [https://github.com/PrismarineJS/node-minecraft-protocol node-minecraft-protocol] | ||
+ | | npm install minecraft-protocol | ||
+ | | [https://github.com/PrismarineJS PrismarineJS] | ||
+ | | [http://nodejs.org/ node.js] | ||
+ | | {{BSD}} | ||
+ | | {{yes|1.7-1.20.1}} | ||
+ | |- | ||
+ | ! [https://github.com/PassTheMayo/minecraft-server-util minecraft-server-util] | ||
+ | | A Node.js library for Minecraft servers that can retrieve status, perform queries, and RCON into servers. | ||
+ | | [https://github.com/PassTheMayo PassTheMayo] | ||
+ | | [https://nodejs.org/ Node.js] | ||
+ | | {{MIT}} | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | ! [https://github.com/plushmonkey/mclib mclib] | ||
+ | | C++ library for creating clients | ||
+ | | [https://github.com/plushmonkey plushmonkey] | ||
+ | | {{C++}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.10-1.12.1}} | ||
+ | |- | ||
+ | ! [https://github.com/timmyrs/Phpcraft Phpcraft] | ||
+ | | A PHP library for all things Minecraft: Java Edition. | ||
+ | | [https://github.com/timmyrs timmyRS] | ||
+ | | {{PHP}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.8-1.15.2}} | ||
+ | |- | ||
+ | ! [https://github.com/ammaraskar/pyCraft pyCraft] | ||
+ | | Python minecraft client library | ||
+ | | [http://ammaraskar.com/ Ammar Askar (ammaraskar)], [https://github.com/dkkline Jeppe Klitgaard (Dkkline)] | ||
+ | | {{Python}} | ||
+ | | {{Apache}} | ||
+ | | {{yes|1.8-1.18.1}} | ||
+ | |- | ||
+ | ! [http://github.com/GeyserMC/MCProtocolLib MCProtocolLib] | ||
+ | | Java implementation of the Minecraft protocol. | ||
+ | | Steveice10 | ||
+ | | {{Java}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.16.5-1.20.2}} | ||
+ | |- | ||
+ | ! [https://github.com/C4K3/Ozelot Ozelot] | ||
+ | | Rust implementation of MCMODERN networking | ||
+ | | C4K3 | ||
+ | | {{Rust}} | ||
+ | | Public domain | ||
+ | | {{yes|1.13.2}} | ||
+ | |- | ||
+ | ! [https://github.com/ags131/SharpMinecraftLibrary SharpMinecraftLibrary] | ||
+ | | | ||
+ | | ags131, electronicboy | ||
+ | | {{C sharp}} | ||
+ | | {{unknown}} | ||
+ | | {{no|1.6.2 (Partial)}} | ||
|- | |- | ||
! [https://github.com/pdelvo/Pdelvo.Minecraft Pdelvos Protocol Implementation] | ! [https://github.com/pdelvo/Pdelvo.Minecraft Pdelvos Protocol Implementation] | ||
Line 22: | Line 237: | ||
| {{C sharp}} | | {{C sharp}} | ||
| {{MIT}} | | {{MIT}} | ||
− | | {{ | + | | {{no|1.5.2}} |
|- | |- | ||
! [https://github.com/shoghicp/Minecraft-PHP-Client-2 Minecraft PHP Client 2] | ! [https://github.com/shoghicp/Minecraft-PHP-Client-2 Minecraft PHP Client 2] | ||
Line 29: | Line 244: | ||
| {{PHP}} | | {{PHP}} | ||
| {{WTFPL}} | | {{WTFPL}} | ||
− | | {{ | + | | {{no|1.5.1}} |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
! [https://github.com/deoxxa/libmcnet libmcnet] | ! [https://github.com/deoxxa/libmcnet libmcnet] | ||
Line 50: | Line 251: | ||
| {{C}} | | {{C}} | ||
| {{BSD}} | | {{BSD}} | ||
− | | {{ | + | | {{no|1.4}} |
|- | |- | ||
! [https://github.com/deoxxa/node-mcnet node-mcnet] | ! [https://github.com/deoxxa/node-mcnet node-mcnet] | ||
Line 57: | Line 258: | ||
| {{JavaScript}}, [http://nodejs.org/ node.js] | | {{JavaScript}}, [http://nodejs.org/ node.js] | ||
| {{BSD}} | | {{BSD}} | ||
− | | {{ | + | | {{no|1.3.2}} |
|- | |- | ||
! [https://github.com/Maincraft/MCPackets MCPackets] | ! [https://github.com/Maincraft/MCPackets MCPackets] | ||
Line 64: | Line 265: | ||
| {{Java}} | | {{Java}} | ||
| {{unknown}} | | {{unknown}} | ||
− | | {{ | + | | {{no|1.2.5}} |
|- | |- | ||
! [https://github.com/axus/libmc--c libmc--c] | ! [https://github.com/axus/libmc--c libmc--c] | ||
Line 71: | Line 272: | ||
| {{C++}}, {{OpenGL}} | | {{C++}}, {{OpenGL}} | ||
| {{GPLv3}} | | {{GPLv3}} | ||
− | | {{ | + | | {{no|1.1}} |
+ | |- | ||
+ | ! [https://github.com/fragmer/fNbt fNbt] | ||
+ | | Reading, writing, and manipulating NBT files and streams, for .NET | ||
+ | | [http://matvei.org/ Matvei Stefarov (fragmer)] | ||
+ | | {{C sharp}} | ||
+ | | {{BSD}} | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://gist.github.com/Jckf/7872337 Yggdrasil.php] | ||
+ | | Interfacing with Mojang's Yggdrasil authentication system. | ||
+ | | [http://www.jckf.no/ Jim C K Flaten (Jckf)] | ||
+ | | {{PHP}} | ||
+ | | {{unknown}} | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://github.com/umby24/libMC.NET libMC.Net] | ||
+ | | .NET Minecraft interaction library | ||
+ | | [http://umby.d3s.co/ umby24] | ||
+ | | {{C sharp}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.7.9}} | ||
+ | |- | ||
+ | ! [https://github.com/MineLib/MineLib.Network MineLib.Network] | ||
+ | | .NET Minecraft network client interaction library. | ||
+ | | [https://github.com/Aragas Aragas (Aragasas)] | ||
+ | | {{C sharp}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.8}} | ||
+ | |- | ||
+ | ! [https://github.com/Evil-Co/NBT-Lib NBT-Lib] | ||
+ | | Allows reading, writing and modification of NBT files and streams. | ||
+ | | [http://www.evil-co.org Evil-Co] | ||
+ | | {{Java}} | ||
+ | | {{Apache}} | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://github.com/DarkStorm652/DarkBot DarkBot] | ||
+ | | Minecraft client, automation (AI) platform, and modular protocol library | ||
+ | | [https://github.com/DarkStorm652 DarkStorm] | ||
+ | | {{Java}} | ||
+ | | {{BSD}} | ||
+ | | {{yes|1.5.2-1.7.9}} | ||
+ | |- | ||
+ | ! [https://github.com/Kronos666/mclaunch-util-lib mclaunch-util-lib] | ||
+ | | Yggdrasil library in Java, has handy features for launchers. | ||
+ | | [https://github.com/Kronos666 Kronos] | ||
+ | | {{Java}} | ||
+ | | {{MIT}} | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://github.com/Litarvan/OpenLauncherLib/ OpenLauncherLib] | ||
+ | | Minecraft launching library written from scratch | ||
+ | | [https://github.com/Litarvan/ Adrien "Litarvan" Navratil] | ||
+ | | {{Java}} | ||
+ | | {{LGPL}} | ||
+ | | {{yes|1.0.0-1.9.2}} | ||
+ | |- | ||
+ | ! [https://github.com/Litarvan/S-Update/ S-Update] | ||
+ | | Powerful and simple Java update system, with Minecraft support. Works with a PHP Server | ||
+ | | [https://github.com/Litarvan/ Adrien "Litarvan" Navratil] | ||
+ | | {{Java}} | ||
+ | | {{LGPL}} | ||
+ | | {{yes|1.0.0-1.9.2}} | ||
+ | |- | ||
+ | ! [https://github.com/Litarvan/OpenAuth/ OpenAuth] | ||
+ | | Yggdrasil library, with possibility to give an other authentication server, it also has its own auth server. | ||
+ | | [https://github.com/Litarvan/ Adrien "Litarvan" Navratil, Valentin "Vavaballz"] | ||
+ | | {{Java}} | ||
+ | | {{LGPL}} | ||
+ | | {{yes|1.0.0-1.9.2}} | ||
+ | |- | ||
+ | ! [https://github.com/jamiemansfield/text text] | ||
+ | | An open-source MIT-licensed library for working with text from Minecraft. | ||
+ | | [https://www.jamierocks.uk/ Jamie Mansfield] | ||
+ | | {{Java}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|1.11.2}} | ||
|- | |- | ||
− | ! [https://github.com/ | + | ! [https://github.com/to2mbn/JMCCC JMCCC] |
− | | Minecraft | + | | A powerful open-source library for launching and downloading Minecraft. |
− | | | + | | [https://github.com/to2mbn/ to2mbn] |
− | | {{ | + | | {{Java}} |
− | | {{ | + | | {{MIT}} |
− | | {{ | + | | {{yes|All}} |
+ | |- | ||
+ | ! [https://pypi.org/project/minecraft-launcher-lib minecraft-launcher-lib] | ||
+ | | A library for installing and lauching Minecraft. It also has functions for Yggdrasil. | ||
+ | | [https://gitlab.com/JakobDev JakobDev] | ||
+ | | {{Python}} | ||
+ | | {{BSD}} | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | ! [https://github.com/KyoriPowered/adventure Adventure] | ||
+ | | A serverside user interface library for Minecraft: Java Edition | ||
+ | | [https://github.com/KyoriPowered Kyori] | ||
+ | | {{Java}} | ||
+ | | {{MIT}} | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | ! [https://github.com/EngineHub/SchematicJS SchematicJS] | ||
+ | | A JavaScript/TypeScript library for loading schematic files | ||
+ | | [https://github.com/EngineHub/ EngineHub] | ||
+ | | {{JavaScript}} | ||
+ | | GPL | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://github.com/Marcel-Baumgartner/SharpNetCraft SharpNetCraft] | ||
+ | | A csharp networking library for minecraft | ||
+ | | [https://github.com/Marcel-Baumgartner Marcel-Baumgartner] | ||
+ | | {{C sharp}} | ||
+ | | None | ||
+ | | 1.17 | ||
+ | |- | ||
+ | ! [https://github.com/EngineHub/SchematicWebViewer SchematicWebViewer] | ||
+ | | A JavaScript/TypeScript library for rendering schematic files in a web canvas | ||
+ | | [https://github.com/EngineHub/ EngineHub] | ||
+ | | {{JavaScript}} | ||
+ | | GPL | ||
+ | | n/a | ||
+ | |- | ||
+ | ! [https://github.com/hypothermic/erl_nbt erl_nbt] | ||
+ | | NBT library for Erlang/Elixir/BEAM | ||
+ | | [https://github.com/hypothermic/ hypothermic] | ||
+ | | [https://www.erlang.org/ Erlang], [https://elixir-lang.org/ Elixir] | ||
+ | | None | ||
+ | | {{yes|All}} | ||
+ | |- | ||
+ | ! [https://github.com/retrooper/packetevents/tree/2.0 packetevents] | ||
+ | | A Java Minecraft protocol library. | ||
+ | | [https://github.com/retrooper/ retrooper] | ||
+ | | {{Java}} | ||
+ | | [https://www.gnu.org/licenses/gpl-3.0.html GPLv3] | ||
+ | | {{yes|1.7.10-1.18.2}} | ||
|- | |- | ||
+ | ! [https://gitlab.com/seeklay/cubelib cubelib] | ||
+ | | Minecraft protocol library for python that provides high-level abstraction for packets | ||
+ | | [https://gitlab.com/seeklay seeklay] | ||
+ | | {{Python}} | ||
+ | | [http://www.gnu.org/copyleft/gpl.html GPLv3.0] | ||
+ | | {{yes|1.8.x/1.12.2}} | ||
|} | |} | ||
[[Category:Minecraft Modern]] | [[Category:Minecraft Modern]] |
Latest revision as of 12:30, 13 July 2024
Minecraft Modern Tools and Mods | |
---|---|
Clients | Servers | Decompilers | Libraries | Utilities | Wrappers |
This is a rather incomplete list of Minecraft related libraries finished or currently in development.
Name | Description | Author(s) | Language | License | Last Version Supported |
---|---|---|---|---|---|
Minestom Scratch | Leverage Minestom's utilities to create a custom server with your own control flow. | Contributors | Java | Apache 2.0 | 1.21 |
WaybackAuthLib | Addon for Mojang's AuthLib to support Yggdrasil authentication again | FlorianMichael/EnZaXD | Java | Apache 2.0 | All |
MinecraftAuth | Simple and easy to use Microsoft authentication library (Java and Bedrock support). Implements 4 login flows (device code, credentials, JavaFX WebView window and local webserver), tokens serialization and tokens refreshing. | RK_01/RaphiMC | Java | LGPL | All |
MCPing | A simple library to ping minecraft servers (Supports Bedrock and Java Edition) | Lenni0451 | Java | MIT | b1.8-1.20.4 |
MCStructs | Java library that provides parser and implementations of NBT, SNBT, Text component and other minecraft data structures | Lenni0451 | Java | MIT | 1.7-1.20.4 |
Minecraft-MS-Authenticator | A versy simple Microsoft authentication library with device code flow | Defective4 | Java | Apache V2 | All |
MineSharp | A high-level API to create Minecraft Bots or interact with the fully implemented minecraft protocol. | psu-de | C# | GPLv3 | 1.18 - 1.19.4 |
SmartNbt | .NET Library for easy, simple, straightforward saving/loading of NBT files and data. Based on mstefarov's fNbt. | CopperPenguin96 | C# | LGPLv3 | All |
cpp-nbt | Header-only NBT serializer for modern C++ | nickelpro | C++ | zlib | All |
nbt | Flexible and intuitive library for reading and writing Minecraft's NBT format on the JVM, with emphasis on custom tags. | iBuyMountainDew | Java | MIT | All |
go-mc | Go library of network protocol, NBT, Yggdrasil, mca file and RCON and so on. | Tnze | Go | MIT | 1.17-All |
mcproto-rs | Rust library that implements the Minecraft protocol (serialize/deserialize) and defines abstractions/macros to implement any prior or future version of the protocol. | Joey (Twister915) | Rust | APACHE 2.0 | 1.15.2 |
CraftLib | Kotlin library that aims to wrap the entire Minecraft codebase. Currently supports protocol, chat and NBT. Will support the Mojang REST API, bot creation, launching, RCON and regions. | Zerite | Kotlin | LGPL | 1.7.x, 1.8.x |
GemBlocks | C# library that easily saves/loads/generates worlds. Currently only has flatgrass. More to come. Based on MorbZ's J2Blocks (translated from java to C#). | apotter96 | C# | MIT | All |
CmlLib.Core | .NET Minecraft Launcher Library. Installing and Launching all version including forge, Yggdrasil Authentication, with crossplatform | AlphaBs | C# | MIT | All |
CraftProtocol | Open source partial implementation of Minecraft network protocol and NBT in Python 2.7. | Toranktto | Python | MIT | 1.8.x, 1.10.x, 1.12.2 |
go-yggdrasil | Allows usage of Mojang's Yggdrasil authentication system in Go | JoshuaDoes | Go | MIT | n/a |
McProtocol | Packets, NBT, Login, Proxy | hansihe | Elixir | MIT | 1.9.2 |
yggdrasil-py | Open-source Python 3.6+ wrapper for the Mojang Yggdrasil authentication service. | Sam Carson (samcarsonx) | Python | MIT | n/a |
MojangSharp | .NET wrapper for Mojang API | Enzo Innocenzi (Hawezo) | C# | Apache License v2 | All |
Craft.Net | .NET Minecraft client, server, and data manipulation library | Drew DeVault (SirCmpwn) | C# | MIT | 1.7.5 |
fastmc | Python 2.7 packet parser/writer & utility library | Florian Wesch (dividuum) | Python | MIT | 1.7/1.8 |
node-minecraft-protocol | npm install minecraft-protocol | PrismarineJS | node.js | BSD | 1.7-1.20.1 |
minecraft-server-util | A Node.js library for Minecraft servers that can retrieve status, perform queries, and RCON into servers. | PassTheMayo | Node.js | MIT | All |
mclib | C++ library for creating clients | plushmonkey | C++ | MIT | 1.10-1.12.1 |
Phpcraft | A PHP library for all things Minecraft: Java Edition. | timmyRS | PHP | MIT | 1.8-1.15.2 |
pyCraft | Python minecraft client library | Ammar Askar (ammaraskar), Jeppe Klitgaard (Dkkline) | Python | Apache License v2 | 1.8-1.18.1 |
MCProtocolLib | Java implementation of the Minecraft protocol. | Steveice10 | Java | MIT | 1.16.5-1.20.2 |
Ozelot | Rust implementation of MCMODERN networking | C4K3 | Rust | Public domain | 1.13.2 |
SharpMinecraftLibrary | ags131, electronicboy | C# | Unknown | 1.6.2 (Partial) | |
Pdelvos Protocol Implementation | .NET client/server protocol library with support for several versions. | pdelvo | C# | MIT | 1.5.2 |
Minecraft PHP Client 2 | PHP client and protocol library. With events, actions and API | shoghicp | PHP | WTFPL | 1.5.1 |
libmcnet | Event based, zero-copy, portable Minecraft network protocol parser | deoxxa | C | BSD | 1.4 |
node-mcnet | Node.JS bindings to libmcnet | deoxxa | JavaScript, node.js | BSD | 1.3.2 |
MCPackets | Java Minecraft protocol library | main() | Java | Unknown | 1.2.5 |
libmc--c | World representation data structures and OpenGL drawing functions. | axus | C++, OpenGL | GPLv3 | 1.1 |
fNbt | Reading, writing, and manipulating NBT files and streams, for .NET | Matvei Stefarov (fragmer) | C# | BSD | n/a |
Yggdrasil.php | Interfacing with Mojang's Yggdrasil authentication system. | Jim C K Flaten (Jckf) | PHP | Unknown | n/a |
libMC.Net | .NET Minecraft interaction library | umby24 | C# | MIT | 1.7.9 |
MineLib.Network | .NET Minecraft network client interaction library. | Aragas (Aragasas) | C# | MIT | 1.8 |
NBT-Lib | Allows reading, writing and modification of NBT files and streams. | Evil-Co | Java | Apache License v2 | n/a |
DarkBot | Minecraft client, automation (AI) platform, and modular protocol library | DarkStorm | Java | BSD | 1.5.2-1.7.9 |
mclaunch-util-lib | Yggdrasil library in Java, has handy features for launchers. | Kronos | Java | MIT | n/a |
OpenLauncherLib | Minecraft launching library written from scratch | Adrien "Litarvan" Navratil | Java | LGPL | 1.0.0-1.9.2 |
S-Update | Powerful and simple Java update system, with Minecraft support. Works with a PHP Server | Adrien "Litarvan" Navratil | Java | LGPL | 1.0.0-1.9.2 |
OpenAuth | Yggdrasil library, with possibility to give an other authentication server, it also has its own auth server. | Adrien "Litarvan" Navratil, Valentin "Vavaballz" | Java | LGPL | 1.0.0-1.9.2 |
text | An open-source MIT-licensed library for working with text from Minecraft. | Jamie Mansfield | Java | MIT | 1.11.2 |
JMCCC | A powerful open-source library for launching and downloading Minecraft. | to2mbn | Java | MIT | All |
minecraft-launcher-lib | A library for installing and lauching Minecraft. It also has functions for Yggdrasil. | JakobDev | Python | BSD | All |
Adventure | A serverside user interface library for Minecraft: Java Edition | Kyori | Java | MIT | All |
SchematicJS | A JavaScript/TypeScript library for loading schematic files | EngineHub | JavaScript | GPL | n/a |
SharpNetCraft | A csharp networking library for minecraft | Marcel-Baumgartner | C# | None | 1.17 |
SchematicWebViewer | A JavaScript/TypeScript library for rendering schematic files in a web canvas | EngineHub | JavaScript | GPL | n/a |
erl_nbt | NBT library for Erlang/Elixir/BEAM | hypothermic | Erlang, Elixir | None | All |
packetevents | A Java Minecraft protocol library. | retrooper | Java | GPLv3 | 1.7.10-1.18.2 |
cubelib | Minecraft protocol library for python that provides high-level abstraction for packets | seeklay | Python | GPLv3.0 | 1.8.x/1.12.2 |