# Marrow
[](https://maven.is-immensely.gay/#/releases/xyz/naomieow/marrow)
[](https://maven.is-immensely.gay/#/nightly/xyz/naomieow/marrow)
[](https://modrinth.com/mod/marrow)
[](https://legacy.curseforge.com/minecraft/mc-mods/marrow)
Minecraft mod that bundles [Arrow](https://arrow-kt.io) for ease-of-use and installation.
## Usage
Simply add it as a dependency to your Gradle project like so:
Groovy
```groovy
repositories {
mavenCentral()
maven {
name = 'Gay Maven'
url = 'https://maven.is-immensely.gay/nightly'
}
}
dependencies {
def variantAttribute = Attribute.of('earth.terrarium.cloche.modLoader', String)
// or modImplementation
implementation('xyz.naomieow:marrow:2.1.2') {
attributes {
// "fabric" for fabric
// "forge" for forge
// "neoforge" for neoforge
attribute variantAttribute, 'fabric'
}
}
}
```
Kotlin DSL
```kts
repositories {
mavenCentral()
maven("https://maven.is-immensely.gay/nightly")
}
dependencies {
val variantAttribute = Attribute.of("earth.terrarium.cloche.modLoader", String::class.java)
// or modImplementation
implementation("xyz.naomieow:marrow:2.1.2") {
attributes {
// "fabric" for fabric
// "forge" for forge
// "neoforge" for neoforge
attribute(variantAttribute, "fabric")
}
}
}
```
Kotlin DSL (Cloche)
```kts
repositories {
mavenCentral()
maven("https://maven.is-immensely.gay/nightly")
}
common {
dependencies {
modImplementation("xyz.naomieow:marrow:2.1.2")
}
}
```
And then you should have access to Arrow in your project:
```kt
val example: Either = Either.Left("Hello world!")
```
## Versioning
Marrow tracks the upstream version of Arrow, which is why the initial release is tagged
as version `2.1.2`. If you ever find Marrow to be outdated, please create an issue or
contact me on [Discord](https://chat.lesbian.skin).
## Bundled Libraries
- `io.arrow-kt:arrow-core`
- `io.arrow-kt:arrow-core-serialization`
- `io.arrow-kt:arrow-fx-coroutines`
- `io.arrow-kt:arrow-fx-stm`
- `io.arrow-kt:arrow-annotations`
- `io.arrow-kt:arrow-atomic`
- `io.arrow-kt:arrow-collectors`
- `io.arrow-kt:arrow-optics`
- `io.arrow-kt:arrow-resilience`
- `io.arrow-kt:arrow-autoclose`
- `io.arrow-kt:arrow-eval`
- `io.arrow-kt:arrow-functions`