{"repo":"BenWoodworth/knbt","free":true,"listed":false,"github":"https://github.com/BenWoodworth/knbt","clone":"git clone https://github.com/BenWoodworth/knbt.git","description":"Kotlin NBT library for kotlinx.serialization","language":"Kotlin","stars":107,"topics":["kotlin","kotlinx-serialization","nbt","minecraft","serialization","kotlin-multiplatform","okio","library","named-binary-tag"],"license":"LGPL-3.0","category":"mobile-apps","readme_excerpt":"knbt An implementation of Minecraft's NBT format for kotlinx.serialization. Technical information about NBT can be found here. Features - Kotlin Multiplatform: JVM, JS, Linux, Windows, macOS, iOS, watchOS - Serialize any data to/from NBT or SNBT - Support for all NBT variants: Java, Bedrock Files, Bedrock Network - Support for all NBT compressions: gzip, zlib - Type-safe NbtTag classes, with convenient builder DSLs Serialization Nbt and StringifiedNbt are used to encode/decode @Serializable data. Configuration Encoding and Decoding Serializing Classes Serializable classes will have their @SerialName used for the root tag's name. Reading/Writing NBT Files (JVM) NbtTag Classes Creating NbtTag s NbtTag s can be created with constructors and builder functions: Building bigtest.nbt with the DSL ( wiki.vg/NBT#bigtest.nbt ) Setup Using the same version of kotlinx.serialization is recommended since parts of its API required for custom formats are still experimental, and newer versions may have binary-incompatible changes that could break knbt's implementation. Upgrading knbt While in beta, all new minor releases (v0. # .0) will have breaking API/functionality changes. Read the release notes for information. Replacement refactorings will be provided where possible for broken APIs. Change the minor version one at a time (e.g. 0.1.0 - 0.2.0 - 0.3.0) and apply quick fixes. Deprecated APIs will then be removed in 0.#.1 releases. Gradle","default_branch":null,"files":null,"tree":[],"storefront":"/r/BenWoodworth","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/BenWoodworth/knbt/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}