Language

PandaLib

PandaLib

Modrinth

A Library mod used by The Panda Oliver

2.3M downloads 91 followers updated 2mo ago
Modrinth
Fabric Forge Neoforge 1.19.2 – 1.21.11 Library

banner.png

Discord
Modrinth
Curseforge
GitHub

Fabric API

About:

PandaLib is a library mod for Minecraft that provides various APIs and utilities to simplify mod development.

The library is written in Kotlin, and some APIs might not be fully supported by Java.

Current Features:

  • Multi-Loader Framework (WIP)
  • Config API
    • Synchronization API
    • Premade formats: JSON
  • Event/Listener API
  • Deferred registration API
  • Networking API
    • Play phase support
    • Configuration phase support
  • Embedded libraries
    • Universal Serializer
    • Embedded Kotlin libraries
      • Kotlin Standard Library
      • Reflect
      • Coroutines
      • Serialization
      • IO
      • DateTime

Future Features:

| Planned | In development |
|--------------------------------------------------|------------------------|
| Config Serializers (TOML, YAML, XML, Properties) | Multi-Loader Framework |
| Config Menu API | |
| Wiki / Docs | |

Supported versions and mod loaders:

| Mod loader | Versions |
|------------|-------------------|
| Fabric | 1.20 – 1.21.10 |
| NeoForge | 1.20.5 – 1.21.10 |
| Forge | Support has ended |

Development is targeted 1.21.10


Development:

Looking for a specific version's codebase

Kotlin DSL

repositories {
	mavenCentral()
	maven("https://repo.pandasystems.dev/repository/maven-public/")
}

dependencies {
	modApi("dev.pandasystems:pandalib-common-<game version>:<version>") // Common
	api("dev.pandasystems:pandalib-neoforge-<game version>:<version>")  // NeoForge
	modApi("dev.pandasystems:pandalib-fabric-<game version>:<version>") // Fabric

	// Only needed if you want to use the embedded Kotlin libraries in NeoForge environments.
	additionalRuntimeClasspath(kotlin("stdlib"))
	additionalRuntimeClasspath(kotlin("stdlib-jdk8"))
	additionalRuntimeClasspath(kotlin("stdlib-jdk7"))
	additionalRuntimeClasspath(kotlin("reflect", version = "2.2.0"))
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2")
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-coroutines-jdk8:1.10.2")
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-serialization-core:1.8.1")
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.1")
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-serialization-cbor:1.8.1")
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-datetime:0.6.2")
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-io-core:0.7.0")
	additionalRuntimeClasspath("org.jetbrains.kotlinx:kotlinx-io-bytestring:0.7.0")
}

Thanks to Kinetic Hosting for supporting this project

Partner Banner

Every purchased server via my affiliate link will help support me and my work.

License

The project is licensed under the GNU LGPLv3

Versions

No version history available. Use the Download button to get the latest from the source.

Comments 0

No comments yet. Be the first to share your thoughts.

Download PandaLib

Files are served directly from the original source. Modgrid does not host or modify them.