ModsFinder

Componency

by deftu

Componency is a client-side library for building declarative graphical user interfaces in Kotlin, and it also supports Java.

FabricForgeNeoForgeClient-side onlyGNU Lesser General Public License v3.0 or laterOpen source1.8.9 – 1.21

What it does

Componency lets a mod author describe a user interface as a tree of components instead of placing each element by hand. Its design draws on Elementa, Figma's naming conventions and the DSL style of Ktor, and the library is built for Kotlin first, with examples showing how to call it from Java. Javadoc and example code are part of the project.

The library works through an engine that supplies it with data and gives it access to rendering. Componency can run on the LWJGL 3 backed rendering path, and a version-only loader forces Minecraft to use LWJGL 3 so that NanoVG and STB are available on legacy game versions. Additional setup instructions for tweakers appear inside the class files themselves.

Files are published for Fabric, Forge and NeoForge, on 1.8.9 – 1.21 across 12 release versions. It is installed on the player's side alone, so servers need nothing. Componency is released under the GNU Lesser General Public License v3.0 or later and is open source, with public source code and an issue tracker.

Key features

  1. Component-tree layouts

    Interfaces are described as a tree of components, so the layout reads as nested structure rather than as calls that place each element.

  2. Kotlin-first API

    The library is written for Kotlin, and the project includes examples that show how a Java mod can use it as well.

  3. Two rendering paths

    The engine can use both rendering approaches, and Componency is wired to the engine so that UI code stays the same.

  4. Legacy version support

    Setup on older game versions loads LWJGL 3 through a dependency management tweaker, so NanoVG and STB are available there.

Compatibility

Latest build for each game version and loader.

No stable releases
Every published file is a beta or alpha build.
1.21.x1 of 1 version with builds
1.210.3.0+1.21-fabricNot available0.3.0+1.21-neoforge
1.20.x4 of 4 versions with builds
1.20.60.3.0+1.20.6-fabricNot available0.3.0+1.20.6-neoforge
1.20.40.3.0+1.20.4-fabric0.3.0+1.20.4-forge0.3.0+1.20.4-neoforge
1.20.20.3.0+1.20.2-fabric0.3.0+1.20.2-forge0.3.0+1.20.2-neoforge
1.20.10.3.0+1.20.1-fabric0.3.0+1.20.1-forgeNot available
1.19.x2 of 2 versions with builds
1.19.40.3.0+1.19.4-fabric0.3.0+1.19.4-forgeNot available
1.19.20.3.0+1.19.2-fabric0.3.0+1.19.2-forgeNot available
1.18.x1 of 1 version with builds
1.18.20.3.0+1.18.2-fabric0.3.0+1.18.2-forgeNot available
1.17.x1 of 1 version with builds
1.17.10.3.0+1.17.1-fabric0.3.0+1.17.1-forgeNot available
1.16.x1 of 1 version with builds
1.16.50.3.0+1.16.5-fabric0.3.0+1.16.5-forgeNot available
1.12.x1 of 1 version with builds
1.12.2Not available0.3.0+1.12.2-forgeNot available
1.8.x1 of 1 version with builds
1.8.9Not available0.3.0+1.8.9-forgeNot available
ReleaseBetaAlphaNot available

Only full game releases are shown. This mod publishes no snapshot builds.

Requirements

Dependencies declared by the latest file for each loader.

Required 3

Fabric Language KotlinThis is a mod that enables usage of the Kotlin programming language for Fabric mods.
Required
OmniCoreA library made to make creating multi-versioned mods significantly easier.
Required
TextileA universal text handling library for Minecraft mods.
Required

How it compares

Full comparison

Ekho is a Fabric-only library from version 1.17, released under the GNU Lesser General Public License v3.0 only and open source, and it works on either side, and neither needs it. Aegis is a Fabric server-side only mod for 1.16.5 – 1.17.1, licensed under the Mozilla Public License 2.0 and open source, so it runs on the server alone. Componency is client-side only, runs on Fabric, Forge and NeoForge, and covers 1.8.9 – 1.21.

ModLoadersGame versionsEnvironmentUpdated
ComponencyFabric, Forge and NeoForge1.8.9 – 1.21Client-side only2024-08-27
EkhoFabric1.17Client or server, optional2021-06-16
AegisFabric1.16.5 – 1.17.1Server-side only2021-08-11

Questions

Does Componency need Fabric Language Kotlin on Fabric?

Yes. Fabric Language Kotlin is a required dependency on Fabric, alongside OmniCore and Textile. Forge and NeoForge builds require Kotlin for Forge instead.

Does a server need Componency installed?

No. It is installed on the player's side alone, so servers need nothing.

Which game version is the newest build for?

The latest Fabric and NeoForge files target 1.21, and the latest Forge file targets 1.20.4, all dated 2024-08-27 on the beta channel.

In the catalog

Componency is one of 3,514 Library mods on ModsFinder, and one of 2,348 Library mods for Fabric. 15,770 mods support Minecraft 1.21.

More from deftu

All projects

Similar mods

What the author says

Componency is roughly based on 3 other things: - Elementa's design - Figma's naming conventions - Ktor's DSL design I used concepts taken from all 3 of these projects to create a simple, declarative UI library that can be used in any environment.
deftu, on the Modrinth page

Official listing

Owner
deftu
Published
2023-12-24
Updated on Modrinth
2024-08-27
Facts verified
2026-10-15

Tags