ClientPulse is a multi-version client project for Minecraft Java Edition. It keeps shared feature metadata separate from version-specific game integrations and provides independently built client variants. It uses the normal Minecraft launcher and account authentication; it is not a standalone launcher.
| Feature | Status |
|---|---|
| Shared Java 8-compatible animation, module and setting foundations | Implemented |
| Minecraft 26.3 Fabric client, searchable settings screen, Right Shift keybind, HUD modules | Build and unit tests pass; in-game launch not yet verified |
| Minecraft 1.8.9 Forge client, animated Click GUI, configurable modules/settings and positionable HUD | Clean test/build and development-world launch pass on JDK 8; Click GUI open/render smoke-tested; OptiFine not verified |
| Minecraft 1.7.10 Forge client and matching HUD/settings controls | Build verified on JDK 8; in-game launch not yet verified |
| 26.3 and 1.7.10 in-game feature verification | Not yet verified |
All HUD modules are off by default. On the 1.8.9 Forge target, the Click GUI opens with Right Shift by default; rebind it in the GUI's Interface Theme settings or Options > Controls > Key Binds. The keybind does not open the GUI while another screen, including chat, is active.
See docs/compatibility.md for the support matrix and exact verification status.
- Minecraft Java Edition 26.3
- Java 25
- Fabric Loader 0.19.5
- Fabric API 0.164.0+26.3
- Fabric Loom 1.19.3
These versions were checked against Fabric documentation, metadata, and Maven artifacts when selected. Re-check the Fabric version selector before upgrading.
Install a JDK 25 distribution and ensure java -version reports version 25. From PowerShell in the project directory:
.\gradlew.bat build
.\gradlew.bat runClientThe first build downloads Gradle, Minecraft, and dependencies. runClient launches a development instance; sign in through the official Minecraft launcher for normal gameplay. In IntelliJ IDEA, open this directory as a Gradle project, set the Gradle JVM to JDK 25, sync, then run the runClient task.
The legacy Forge implementation has its own Gradle 2.14.1 wrapper and requires JDK 8. It reuses clientpulse-core but does not share modern Minecraft classes or rendering APIs. Its build task has passed locally; the legacy launch has not yet been verified.
Set-Location .\versions\1.7.10-forge
.\gradlew.bat build
.\gradlew.bat runClientThe legacy wrapper and Forge dependencies build successfully; runtime launch and in-game behavior remain unverified.
The 1.8.9 build is a separate Forge mod and is not compatible with the 1.7.10 or 26.3 artifacts. It targets Forge 11.15.1.2318 and Java 8 and includes the animation engine, module/settings framework, HUD modules, and a searchable Click GUI. To build and launch it locally:
Set-Location .\versions\1.8.9-forge
.\gradlew.bat clean test build
.\gradlew.bat runClientPress Right Shift in-game to open the GUI. Select a module to edit its settings; use its toggle to enable or disable it. Configuration is stored in config/clientpulse-1.8.9.properties under the development run directory. The client and GUI have launched in a development world, but OptiFine compatibility has not been verified. To try it with OptiFine, use a Minecraft 1.8.9 Forge profile with Forge 11.15.1.2318 and a matching OptiFine 1.8.9 installation. Put clientpulse-1.8.9-0.1.0.jar in that profile's mods folder.
The modern Fabric target stores settings in config/clientpulse.json. Forge targets store separate properties files under config/. All HUD modules are off by default.
clientpulse-core/ # Version-independent animations, modules and settings; Java 8 bytecode
src/
├── client/java/com/ruhioki/clientpulse/
│ ├── config/ # Persisted feature settings
│ ├── hud/ # Optional client HUD diagnostics
│ ├── screen/ # Searchable client settings screen
│ └── ClientPulseClient.java
├── client/resources/ # Client translations
└── main/resources/ # Fabric mod metadata
versions/
├── 1.7.10-forge/ # ForgeGradle 1.2 build and legacy adapter
└── 1.8.9-forge/ # ForgeGradle 2.1 build and 1.8.9 adapter
Run .\gradlew.bat test for unit tests and .\gradlew.bat build for the modern target. Use the version-specific wrappers for Forge targets. The GitHub Actions workflow builds each configured target independently. The modern and Forge JARs are written to their respective build/libs/ directories. Graphical launch and in-game behavior still need verification on a machine with Minecraft assets and a usable display.
ClientPulse is licensed under the MIT License. Minecraft and Fabric are third-party projects; their respective terms apply.