A modularized, lightweight collection of configuration language options.
Find a file
Anastasia Chrysanthemum 8aca666581
All checks were successful
Build / build (push) Successful in 1m45s
Merge remote-tracking branch 'origin/main'
2026-01-21 04:55:32 +11:00
.forgejo/workflows fix: Remove unnecessary MAVEN_URL secret. 2026-01-12 09:25:04 +11:00
build_logic feat: Update Polyamory DFU and Lang JSONC names. 2026-01-21 04:55:19 +11:00
core refactor: Remove lower data type constructors from PolyamoryInt. 2026-01-02 08:47:55 +11:00
dfu style: Remove unnecesary whitespace. 2026-01-02 08:46:57 +11:00
gradle feat: Create DFU tests. 2025-12-03 13:14:14 +11:00
lang/jsonc fix: Write floats accurately. 2026-01-02 09:21:56 +11:00
src/test fix: Write floats accurately. 2026-01-02 09:21:56 +11:00
.editorconfig Initial commit, I'll change the name later... 2025-11-28 13:35:46 +11:00
.gitignore fix: gitignore any folder named testdata. 2025-12-08 14:48:13 +11:00
build.gradle.kts refactor: Fix resources folder not always obtaining the correct files. 2025-12-31 08:08:09 +11:00
gradle.properties build: Enable configuration cache. 2025-12-31 09:25:48 +11:00
gradlew fix: Allow group and others to execute ./gradlew. 2026-01-12 09:19:11 +11:00
gradlew.bat Initial commit, I'll change the name later... 2025-11-28 13:35:46 +11:00
README.md chore: Update README.md. 2026-01-12 06:33:48 +11:00
settings.gradle.kts feat: Unplaceholder Core and DFU icons, remove dummy mod. 2025-12-09 17:50:35 +11:00

Polyamory

Polyamory is a library useful for decoding and encoding different data formats.

With a goal to make all implemented data languages as feature complete as possible, with comment parsing fully supported.

Currently Supports the Following Languages:

Depending on the Library

If you are using Polyamory for a Minecraft mod. It is recommended to either include or jarJar the dependency to avoid users having to download a Greenhouse Forgejo only dependency.

polyamory_version = "0.1.0"
polyamory_dfu_version = "0.1.0"
polyamory_lang_jsonc_version = "0.1.0"

The below is for Kotlin DSL, you will need to adjust this for Groovy DSL.

repositories {
    maven {
        name = "Greenhouse Maven"
        url = "https://maven.greenhouse.lgbt/releases"
    }
}

dependencies {
	// Depend on the Core library. This is required for any other modules.
	implementation("lgbt.greenhouse.polyamory:polyamory:${polyamory_version}")

	// Depend on a language, you will need at least one to use the library.
	implementation("lgbt.greenhouse.polyamory.lang.jsonc:polyamory-lang-jsonc:${polyamory_jsonc_version}")

	// Depend on integration for DFU, useful if you are using https://github.com/Mojang/DataFixerUpper/.
	implementation("lgbt.greenhouse.polyamory.dfu:polyamory-dfu:${polyamory_dfu_version}")

	// Include the library if you are making a Minecraft mod...
	include(...) // Fabric Loom and derivatives.
	jarJar(...) // ModDevGradle and derivatives.
}