A library providing powerful client-server-agnostic predicates with a simple API.
Find a file
sylv256 1d61ceb015
Some checks are pending
Build / build (push) Waiting to run
Test Fabric / build (push) Waiting to run
Test NeoForge / build (push) Waiting to run
chore: add MerchantCalico to contributors list
2025-10-21 22:35:44 -04:00
.github/workflows chore/fix: Port to 1.21.5, fixes for some contents of the mod. 2025-07-27 18:57:41 +10:00
buildSrc chore: add MerchantCalico to contributors list 2025-10-21 22:35:44 -04:00
common chore: move to using forgejo 2025-10-21 22:34:09 -04:00
fabric chore: move to using forgejo 2025-10-21 22:34:09 -04:00
gradle/wrapper chore/fix: Port to 1.21.5, fixes for some contents of the mod. 2025-07-27 18:57:41 +10:00
neoforge chore: move to using forgejo 2025-10-21 22:34:09 -04:00
.editorconfig [no ci] style: modify .editorconfig to correctly indent JSON files 2025-02-10 15:47:05 -05:00
.gitattributes Initial commit 2024-11-19 15:44:03 -05:00
.gitignore build: Don't include .kotlin directories (annoying). 2025-07-27 19:19:52 +10:00
build.gradle.kts chore/fix: Port to 1.21.5, fixes for some contents of the mod. 2025-07-27 18:57:41 +10:00
CHANGELOG.md chore/fix: Port to 1.21.5, fixes for some contents of the mod. 2025-07-27 18:57:41 +10:00
gradle.properties Initial commit 2024-11-19 15:44:03 -05:00
gradlew Initial commit 2024-11-19 15:44:03 -05:00
gradlew.bat Initial commit 2024-11-19 15:44:03 -05:00
LICENSE fix: #1 2024-11-22 00:00:44 -05:00
README.md fix: update repository URLs 2025-09-07 06:10:26 -04:00
settings.gradle.kts chore: move to using forgejo 2025-10-21 22:34:09 -04:00

Silicate

A library providing powerful client-server-agnostic predicates with a simple API.

Important

This library is new; use it with caution. The API may change frequently, and not all features have been implemented. Check the issue tracker for updates.

Usage

Add this to your build.gradle(.kts)

repositories {
	exclusiveContent {
		forRepositories(
			maven("https://maven.modgarden.net/releases") {
				name = "Greenhouse"
			}
		)
		filter { includeGroup("net.modgarden.silicate") }
	}
}

dependencies {
	// If using multiloader, use each platform as below for silicate in their respective modules
	implementation("net.modgarden.silicate:silicate-PLATFORM:VERSION")
	// If using multiloader, put this in your "common" module
	// compileOnly("net.modgarden.silicate:silicate-common:VERSION")
}

Goal

The goal of Silicate is to complete a context-aware predicate system on par with Minecraft's Loot Context-aware predicates. Available for Fabric and NeoForge, Silicate provides a common API for interfacing advanced predicates between mods, across platforms. Silicate achieves this by implementing a clean-slate predicate architecture, initially independent of Minecraft.

Features

Silicate provides out-of-the-box Codec and datapack support, enabling developers and modpack designers to more easily implement and configure desired behavior. Silicate also comes with built-in predicates for Minecraft's various game interactions, easing the amount of boilerplate necessary.

Contributing

Before you contribute, please read about Conventional Commits. This repository uses Conventional Commits for all commit messages, and any non-conforming commit messages will be converted.