All Mods Resource Packs Data Packs Shaders Modpacks Plugins
oωo (owo-lib)

oωo (owo-lib)

by BasiqueEvangelist • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Header A general utility, GUI and config library for modding on Fabric and Quilt  


Features include:

  • owo-ui, a fully-featured declarative UI library for building dynamic, beautiful screens with blazingly fast development times

  • owo-config, a built-in, customizable configuration system built on top of owo-ui. It provides many of the same features as Cloth Config while many new conveniences, like server-client config synchronization, added on top

  • A fully automatic registration system that is designed to be as generic as possible. It is simple and non-verbose to use for basic registries, yet the underlying API tree is flexible and can also be used for many custom registration solutions

  • Item Group extensions which allow for sub-tabs inside your mod's group as well as a host of other features like custom buttons, textures and item variant handling

  • A fully-featured networking layer with fully automatic serialization, handshaking to ensure client compatibility and a built-in solution for triggering parametrized particle events in a side-agnostic manner

  • Client-sided particle helpers that allow for easily composing multi-particle effects

  • Rich text translations, allowing you to use Minecraft's text component format in your language files to provide styled text without any code


owo is documented in two main ways:

  • There is rich, detailed JavaDoc throughout the entire codebase
  • There is a wiki with in-depth explanations and tutorials for most of owo's features over at https://docs.wispforest.io/owo/features

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.2
Fabric Quilt
21h ago 1
26.1.x
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
26.1.x
Fabric Quilt
21h ago 1
1.21.11
Fabric Quilt
21h ago 1
1.21.10
Neoforge
21h ago 1
1.21.10
Neoforge
21h ago 1
1.21.10
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.9
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.8
Neoforge
21h ago 1
1.21.8
Neoforge
21h ago 1
1.21.8
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.8
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.5
Neoforge
21h ago 1
1.21.5
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.5
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.4
Neoforge
21h ago 1
1.21.4
Fabric Quilt
21h ago 1
1.21.4
Neoforge
21h ago 1
1.21.4
Fabric Quilt
21h ago 1
1.21.3
Neoforge
21h ago 1
1.21.3
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.3
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.1
Neoforge
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21.x
Fabric Quilt
21h ago 1
1.21
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.5
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.2
Fabric Quilt
21h ago 1
1.20.2
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.20.x
Fabric Quilt
21h ago 1
1.19.4
Fabric Quilt
21h ago 1
1.19.4
Fabric Quilt
21h ago 1
1.19.4
Fabric Quilt
21h ago 1
1.19.4
Fabric Quilt
21h ago 1
1.19.3
Fabric Quilt
21h ago 1
1.19.3
Fabric Quilt
21h ago 1
1.19.3
Fabric Quilt
21h ago 1
1.19.3
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.3
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.19.x
Fabric Quilt
21h ago 1
1.18.2
Fabric
21h ago 1
1.19
Fabric
21h ago 1
1.18.2
Fabric
21h ago 1
1.18.2
Fabric
21h ago 1
1.18.2
Fabric
21h ago 1
1.18.2
Fabric
21h ago 1
1.18.2
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18.x
Fabric
21h ago 1
1.18
Fabric
21h ago 1
1.18-pre8
Fabric
21h ago 1
1.18-pre8
Fabric
21h ago 1
1.18-pre8
Fabric
21h ago 1
1.17.x
Fabric
21h ago 1
21w43a
Fabric
21h ago 1
1.17.x
Fabric
21h ago 1
1.17.x
Fabric
21h ago 1
1.17.x
Fabric
21h ago 1
1.17.x
Fabric
21h ago 1
[0.13.1+26.2] [26.2] oωo - 0.13.1 by BasiqueEvangelist on Oct 07, 2026
Download
This is a straightforward port to 26.2
[0.13.1+26.1] [26.1+] oωo - 0.13.1 by BasiqueEvangelist on Oct 07, 2026
Download
## Fixes

## Additions
  • BaseOwoContainerScreen has gained a secondary constructor which allows specifying the texture width and height, since they're now final
## Compatibility Warning
This release represents a build of the largely untested braid-ui-1.21 branch, hence it is marked as an alpha. It is not entirely equivalent in features to 0.13.0 for 1.21.11+ and the features which were backported have not been comprehensively tested for backwards compatibility with mods compiled against previous 1.21 versions of owo-lib.

This release is provided primarily for mods like Arcane Repository and Trickster, which want to make use of braid on 1.21. Besides fixes for major compatibility issues we will not be supporting or updating it.
[0.13.0+26.1] [26.1] oωo - 0.13.0 by BasiqueEvangelist on Oct 07, 2026
Download
This is a straightforward port to 26.1
[0.13.0+1.21.11] [1.21.11] oωo - 0.13.0 by BasiqueEvangelist on Oct 07, 2026
Download
## API Renamings
In preparation for future unobfuscated versions of the game, owo-lib is now developed using the official Mojang Mappings and relevant API elements have been renamed accordingly. Besides a number of straight-forward adaptations (like World -> Level), this also meant that **the core class of owo-ui (previously Component) had to be renamed to UIComponent** to avoid a name collision with net.minecraft.network.chat.Component. Related classes follow suit, e.g. ParentComponent -> ParentUIComponent, Containers -> UIContainers.

## Language Extensions
In addition to Rich Translations, owo-lib now supports nested language files which help to greatly reduce repetition in language keys. Additionally, to reduce conflict potential, **all of owo's language extensions are now opt-in**. Check out the relevant [section of the docs](https://docs.wispforest.io/owo/data-extensions/nested-lang).

## JSON5 Support
The majority of JSON files in any data/resource pack can be converted to use JSON5 when owo-lib is configured to read and convert them to JSON on-the-fly. Once again, check out [the docs](https://docs.wispforest.io/owo/data-extensions/json5).

## braid UI framework
Due to unforeseen technical circumstances (I did not want to remap the entire library twice), this build includes an early pre-alpha version of the upcoming braid UI framework. While reasonably well-tested and somewhat mature feature-wise, we do not consider it ready for release and we make *absolutely no guarantees about API stability*.

If you want to try it out or toy around with it anyways, check out the [getting started guide](https://docs.wispforest.io/braid/getting-started). We'd love to get some early feedback!
Fix issues with concurrency leading to missing packets for mods using owo networking
Fixes:
  • missing AT entry for setTooltipForNextFrameInternal causing missing tooltips
## Additions
  • owo-ui components can use the new inspectorDescriptor getter to customize the text displayed below them when the inspector is active
  • ReadView and WriteView have new methods for getting/setting values in them using keyed Endecs

## Fixes
  • ModDataLoader now works properly in a development environment using split sources
  • The surface setter on DropdownComponent now correctly returns the dropdown
[0.12.24+1.21.9] [1.21.9+] oωo - 0.12.24 by BasiqueEvangelist on Oct 07, 2026
Download
## Additions
  • owo-ui components can use the new inspectorDescriptor getter to customize the text displayed below them when the inspector is active
  • ReadView and WriteView have new methods for getting/setting values in them using keyed Endecs

## Fixes
  • ModDataLoader now works properly in a development environment using split sources
  • The surface setter on DropdownComponent now correctly returns the dropdown
[0.12.23+1.21.8] [1.21.6+] oωo - 0.12.23 by BasiqueEvangelist on Oct 07, 2026
Download
## Fixes
  • Labels with text that has an empty style no longer crash when clicked on
  • Scissoring on draw contexts which have complex transforms should no longer incorrectly cut off content
## Changes
  • Ported to 1.21.9: Most features seem to work well from our limited testing, however full library coverage is not guaranteed. Please report any problems you find
  • The zIndex property of owo-ui components has been removed - it has been nonfunctional since 1.21.6
[0.12.22+1.21.9] [1.21.9] oωo - 0.12.22 by BasiqueEvangelist on Oct 07, 2026
Download
## Changes
  • Ported to 1.21.9: Most features seem to work well from our limited testing, however full library coverage is not guaranteed. Please report any problems you find
  • The zIndex property of owo-ui components has been removed - it has been nonfunctional since 1.21.6
Add AT entry for simple map of DataComponentMap to resolve crashing
Attempt to resolve issues with client side loading of classes and methods leading to crashes
Fix issues with MergedComponentMapMixin At targets due to not being remapped
[0.12.22+1.21.8] [1.21.6+] oωo - 0.12.22 by BasiqueEvangelist on Oct 07, 2026
Download
## Changes
  • (Breaking) Renamed OwoItemGroup.getBackgroundTexture to getOwoBackgroundTexture to avoid a naming conflict when developing in an environment with Mojang Mappings

## Fixes
  • DerivedComponentMap should play more nicely with other mods that manually check for component equality
  • owo-ui blur no longer flickers occasionally
  • owo-ui scissoring no longer incorrectly stops rendering elements that are partially off-screen. This is most noticeable in scroll containers, like the one used in owo config
This release is primarily a port to 1.21.6/7. Due to the massive vanilla refactors around GUI rendering in particular, this is a larger-than-usual update and we expect there will be some bugs and porting mistakes - please report anything you find!

## Changes
  • OwoBlurRenderer has been replaced with BlurQuadElementRenderState in accordance with the vanilla GUI rendering changes

## Removed
  • (Block|Entity|Item)RegistryContainer
  • OwoItemSettings, replaced by interface injection on Item.Settings
  • DraggableContainer.alwaysOnTop
  • CodecUtils.ofEndec, replaced by toCodec
  • ConfigScreen.(registerProvider|getProvider|forEachProvider), replaced by ConfigScreenProviders

## Fixes:
  • Issues where flashing occurred with owo blur renderer
  • Incorrect scissoring behavior leading to non rendering gui elements particularly with scroll containers in owo configs.
  • Proper fix for DerivedComponentMap equality
  • Fix possible issues with Optional reading and writing within NBT losing references due to use of IdentityHolder

## Neoforge

Changes to how classes persist due to the removal of @OnlyIn could lead to issues but mostly taken care of.
Attempt fix for issues with equality with DerivedComponentMap which resolves issues with other mods like [Pastel](https://github.com/wisp-forest/owo-lib/issues/395)
Update attempts to remove dependency on FFAPI to resolve issues, fix missing owo item groups, and pull from upstream 1.21.1, and fix issues with optional serialization issues
[0.12.21+1.21.6] [1.21.6+] oωo - 0.12.21 by BasiqueEvangelist on Oct 07, 2026
Download
This release is primarily a port to 1.21.6/7. Due to the massive vanilla refactors around GUI rendering in particular, this is a larger-than-usual update and we expect there will be some bugs and porting mistakes - please report anything you find!

## Changes
  • OwoBlurRenderer has been replaced with BlurQuadElementRenderState in accordance with the vanilla GUI rendering changes

## Removed
  • (Block|Entity|Item)RegistryContainer
  • OwoItemSettings, replaced by interface injection on Item.Settings
  • DraggableContainer.alwaysOnTop
  • CodecUtils.ofEndec, replaced by toCodec
  • ConfigScreen.(registerProvider|getProvider|forEachProvider), replaced by ConfigScreenProviders
Initial port of owolib 0.12.21 for Neoforge
[0.12.21+1.21.5] [1.21.5] oωo - 0.12.21 by BasiqueEvangelist on Oct 07, 2026
Download
## Fixes
  • The blur pipeline now uses a custom vertex shader to avoid a random fog code dependency
  • OwoBlurRenderer now uses the depth buffer in its render pass to fix blur rendering issues on some drivers
  • owo no longer accidentally overwrites the vanilla gui_textured render pipeline
## Fixes
  • Fixed the optional flattening implementation introduced in the last build
  • Decoding of sequence elements in NBT has been made idempotent
[0.12.20+1.21.5] [1.21.5] oωo - 0.12.20 by BasiqueEvangelist on Oct 07, 2026
Download
## Changes
  • Updated to 1.21.5
  • As a consequence of the changes to Minecraft's rendering backend, the GlProgram API has been removed since it is no longer necessary
  • As a further consequence of the above change, owo's built-in programs have changed API:
  • OwoClient.HSV_PROGRAM has been superseded by OwoUIPipelines.GUI_HSV
  • OwoClient.BLUR_PROGRAM has been replaced with the OwoBlurRenderer, which uses the same shader and parameters under the hood
## Fixes
  • Backport optional flattening fixes from 0.12.17
Fixes:
  • Fix issues with errors relating to texture identifier being null
  • Fix issue involved with ModDataLoader on Connector not being able to get any mod list
Fixes issues for devs due to improper declaration of Access Widner
## Fixes:
  • Aggressively specialize lists generated by NbtSerializer.Sequence to fix deserialization of types like UUID which expect a specialized NBT array type (#363, Blodhgarm)
## Fixes
  • Aggressively specialize lists generated by NbtSerializer.Sequence to fix deserialization of types like UUID which expect a specialized NBT array type (#363, Blodhgarm)
Deal with issues involving recent changes to neos reload listeners changes
oωo (owo-lib) Icon
Download oωo (owo-lib)
Select game version
Select platform