InGame Info Reborn

Quick rating

InGame Info Reborn

No reviews yet

In-game HUDs and GUIs done with structure — reactive, declarative, composable, and built to handle the rest.

No Theme
No Genre
UI & Menu Tool
API/Library
Mod Loaders
Forge
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Where It Runs
Client and Server

Must be installed on both the client and the server.

About

Project Details

Type
Mod
License
MIT License
Latest Version
ingameinfo-1.2.3.jar
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

Source Issues Wiki Discord

About

Description

InGame Info Reborn

"In-game HUDs and GUIs done with structure — reactive, declarative, composable, and built to handle the rest."

Downloads Downloads

This is a Work-In-Progress spiritual successor of InGame-Info-XML, not a fork. If you like this project, don't forget to give it a star⭐!

Suggestions/PRs are welcome

Overview

This is a library mod that helps you to create in-game overlaid (or focused) GUI with ease.

Snipaste_2025-01-12_12-53-07 (Nothing will pop up with the default configuration!)

Architectural Modules Chart

Module Role Status
MVVM Base Separates logic (ViewModel) from rendering (View) ✅ Done
XAML-Style DSL For View Declarative XAML-style layout to build static UI trees ✅ Done
Reactive Binding View reacts to changes in ViewModel automatically ✅ Done
Compose (Injected via Slot) Immediate-mode UI embedded in ViewModel ⚠️ Partially
Snapshot Diffing Virtual tree diffing for Compose-based UI ✅ Done
Shared Context Shared runtime context between ViewModel and Compose blocks ✅ Done
DOM-Like Event System Input propagation and event capturing/bubbling ✅ Done
Interactable Control Captures input, intercepts propagation (works with Event System) ✅ Done
Fixed / Render Update Dual update loop for logic vs render ✅ Done
Annotation Driven Auto-Interpolation Utility for smooth interpolation during render updates ✅ Done
Render Op Queue Abstract draw commands for controls ✅ Done
UI Decoration Draw custom visuals on existing controls ✅ Mostly Done
Transition API Externally trigger view transitions 🚧 Planned
Theme Manager Global theme system (colors, font scale, etc) ✅ Mostly Done
Modal Layer Stack-based modal / dialog system 🚧 Planned

Example

<VerticalGroup>
    <Text uid = "fps">
    ...
</Group>
// snippet from View and ViewModel classes
@Reactive(targetUid = "fps", property = "text", initiativeSync = true)
public ReactiveObject<String> fpsText = new ReactiveObject<>(){};

EventCenter.gameFpsEvent.addListener((fps) ->
{
    fpsText.set("FPS: " + fps);
});
// registration entry point
@SubscribeEvent
public static void onIgiRuntimeEntryPoint(IgiRuntimeEntryPointEvent event)
{
    event.runtime.initPhase
            .registerMvvm("example", ExampleViewModel.class)
            .openGuiOnStartup("example");
}

Wiki

Implementation Todo List / Overview

Currently working on the architecture.
Not adding controls or QoL updates.

My Detailed Todo List:

Implementation Overview:

  • Add framebuffer to the GUI rendering life cycle (✔)
  • Introduce a custom GUI container (✔)
  • Maintain a list of GUI containers so that GUIs can stack together (✔)
  • A GUI container can be ingame-overlaid/focused (runtime switchable) (✔)
  • Introduce feature-rich GUI layout
    • Pivot (✔)
    • Alignment (✔)
    • Padding (✔)
    • Horizontal Group (stack elements horizontally) (✔)
    • Vertical Group (stack elements vertically) (✔)
    • Sized Group (✔)
    • Nesting Groups (group in group) (✔)
    • Adaptive Group (fit elements into it adaptively)
    • Foldout Group
    • Draggable Group
  • Add controls like text, button, input field, etc.
    • Text (✔)
    • Sliding Text (✔)
    • Anim Text (✔)
    • Button (✔)
    • Checkbox
    • Input Field
    • Image (✔)
    • Url Image (✔)
    • GIF
    • Slide Bar
    • Progress Bar (✔)
    • Item (✔)
  • Add CrT/Zenscript support (✔)
  • Ingame spotify support (go to wiki for details) (✔)

Latest Build

In case you want to use the latest action build

  • Go to GitHub Actions
  • Click on the latest workflow
  • Scroll down to the bottom and download the Artifacts
  • Unzip and ingameinfo-[version].jar is the mod file

Credits

InGame Info Reborn

"In-game HUDs and GUIs done with structure — reactive, declarative, composable, and built to handle the rest."


Versions Downloads Downloads

This is a Work-In-Progress spiritual successor of InGame-Info-XML, not a fork. If you like this project, don't forget to give it a star⭐!

Suggestions/PRs are welcome

Overview

This is a library mod that helps you to create in-game overlaid (or focused) GUI with ease.

Snipaste_2025-01-12_12-53-07 (Nothing will pop up with the default configuration!)

Architectural Modules Chart

Click to Expand
Module Role Status
MVVM Base Separates logic (ViewModel) from rendering (View) ✅ Done
XAML-Style DSL For View Declarative XAML-style layout to build static UI trees ✅ Done
Reactive Binding View reacts to changes in ViewModel automatically ✅ Done
Compose (Injected via Slot) Immediate-mode UI embedded in ViewModel ⚠️ Partially
Snapshot Diffing Virtual tree diffing for Compose-based UI ✅ Done
Shared Context Shared runtime context between ViewModel and Compose blocks ✅ Done
DOM-Like Event System Input propagation and event capturing/bubbling ✅ Done
Interactable Control Captures input, intercepts propagation (works with Event System) ✅ Done
Fixed / Render Update Dual update loop for logic vs render ✅ Done
Annotation Driven Auto-Interpolation Utility for smooth interpolation during render updates ✅ Done
Render Op Queue Abstract draw commands for controls ✅ Done
UI Decoration Draw custom visuals on existing controls ✅ Mostly Done
Transition API Externally trigger view transitions 🚧 Planned
Theme Manager Global theme system (colors, font scale, etc) ✅ Mostly Done
Modal Layer Stack-based modal / dialog system 🚧 Planned

Example

<VerticalGroup>
    <Text uid = "fps">
    ...
</Group>
// snippet from View and ViewModel classes
@Reactive(targetUid = "fps", property = "text", initiativeSync = true)
public ReactiveObject<String> fpsText = new ReactiveObject<>(){};

EventCenter.gameFpsEvent.addListener((fps) ->
{
    fpsText.set("FPS: " + fps);
});
// registration entry point
@SubscribeEvent
public static void onIgiRuntimeEntryPoint(IgiRuntimeEntryPointEvent event)
{
    event.runtime.initPhase
            .registerMvvm("example", ExampleViewModel.class)
            .openGuiOnStartup("example");
}

Wiki

Implementation Todo List / Overview

Click to Expand

Currently working on the architecture.
Not adding controls or QoL updates.

My Detailed Todo List:

Implementation Overview:

  • Add framebuffer to the GUI rendering life cycle (✔)
  • Introduce a custom GUI container (✔)
  • Maintain a list of GUI containers so that GUIs can stack together (✔)
  • A GUI container can be ingame-overlaid/focused (runtime switchable) (✔)
  • Introduce feature-rich GUI layout
    • Pivot (✔)
    • Alignment (✔)
    • Padding (✔)
    • Horizontal Group (stack elements horizontally) (✔)
    • Vertical Group (stack elements vertically) (✔)
    • Sized Group (✔)
    • Nesting Groups (group in group) (✔)
    • Adaptive Group (fit elements into it adaptively)
    • Foldout Group
    • Draggable Group
    • Add controls like text, button, input field, etc.
      • Text (✔)
      • Sliding Text (✔)
      • Anim Text (✔)
      • Button (✔)
      • Checkbox
      • Input Field
      • Image (✔)
      • Url Image (✔)
      • GIF
      • Slide Bar
      • Progress Bar (✔)
      • Item (✔)
    • Add CrT/Zenscript support (✔)
    • Ingame spotify support (go to wiki for details) (✔)

Latest Build

In case you want to use the latest action build

  • Go to GitHub Actions
  • Click on the latest workflow
  • Scroll down to the bottom and download the Artifacts
  • Unzip and ingameinfo-[version].jar is the mod file

Credits

Screenshots

Gallery

  • 400982032-4324f4e5-481a-4a72-8658-6b65f876809c-min.png
    400982032-4324f4e5-481a-4a72-8658-6b65f876809c-min.png 400982032-4324f4e5-481a-4a72-8658-6b65f876809c-min.png

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~1,000
Total Downloads
CurseForge
~1,000
Modrinth
<1,000
Last Updated
CurseForge
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works