A highly customizable keystroke overlay for Minecraft 1.21-1.21.11. It renders a live, configurable layout of keyboard and mouse inputs so players can see exactly what is being pressed in real time.
- Minecraft: 1.21-1.21.11
- Fabric Loader: 0.18.3 or higher
- Fabric API: 0.140.2+1.21.11
- Java: 21 or higher
-
Install Fabric Loader
- Download and install Fabric Loader for your Minecraft version
- Download from FabricMC
-
Install Fabric API
- Download the Fabric API build that matches your Minecraft version
- Download from Modrinth
-
Install Visual Keystrokes
- Build the mod or download a release jar
- Place the jar in your
modsfolder
-
Launch and Configure
- Start Minecraft with Fabric Loader
- Toggle the overlay with
F8(changeable in controls)
- Live key and mouse button visualization with pressed-state feedback
- Fully editable layout via a JSON config file
- Scalable overlay with adjustable position, colors, and padding
- Lightweight HUD renderer with a simple toggle keybind
- Toggle the overlay with
F8by default (change in controls menu) - Use the pause menu button Edit Keystrokes to move, resize, or remove elements in-game
- In the editor: click an element to select it, drag to move, use the corner handles to resize, click the trash icon or drop it into the sidebar to remove, and use the +/- button to open or close the right sidebar to drag elements back in
- After first launch, edit
.minecraft/visualkeystrokes/visualkeystrokes.jsonto customize:- Key positions, sizes, labels
- Overlay colors and scale
- Default enabled state and padding
- Targets Minecraft 1.21-1.21.11
- Fabric Loader 0.18.3+
- Fabric API resolves per target version
-
Clone the Repository
git clone <repo-url> cd visual-keystrokes
-
Generate Sources
./gradlew genSources
-
Import to IDE
- Import as a Gradle project
- Wait for dependencies to resolve
-
Build the Mod
./gradlew build
Output will be in
build/libs/ -
Build a Specific Minecraft Version
./gradlew clean build -Pmc_version=1.21.4
Output will be in
build/libs/ -
Build All Supported Versions
./gradlew buildAllTargets
Outputs will be in
build/libs/with per-version jar names. -
Run in Development
./gradlew runClient
| Component | Version |
|---|---|
| Mod Version | 1.0.0 |
| Minecraft Version | 1.21-1.21.11 (default 1.21.11) |
| Yarn Mappings | Resolved per target (default 1.21.11+build.3) |
| Fabric Loader | 0.18.3 |
| Fabric API | Resolved per target (default 0.140.2+1.21.11) |
- Follow Java coding conventions
- Add comments for complex logic
- Test your changes thoroughly
- Update documentation as needed
See LICENSE.txt.
- Bug Reports: open a GitHub issue with repro steps and logs
- Feature Requests: open a GitHub issue with use cases and mockups if possible
- Documentation: check this README and in-game tooltips
- Issues: file an issue in the project tracker