- Loaders
- Fabric
- Downloads on Modrinth
- 117
- Followers on Modrinth
- 0
- version
- 1
- Updated
- February 27, 2026Feb 27
- Published
- in 2026
At a glance
Needed both in the game and on the server
★ Starshadow Lib
The foundation for Starshadow mods.
Starshadow Lib is a shared widget toolkit and utility library for Minecraft Fabric mods. It provides the building blocks that power Starshadow's config screens, mod list, and splash screen — and you can use them in your own mods too.
"Widgets, layout, and rendering — the boring parts, done right."
✨ Features
🎛️ Widget Toolkit
Ready-to-use Minecraft GUI widgets built on vanilla screen components:
| Widget | Description |
|---|---|
| ToggleWidget | On/off toggle switch with animation |
| SliderWidget | Numeric slider with configurable range |
| IntStepperWidget | Integer value with +/- buttons |
| EnumCycleWidget | Cycle through enum values with click |
| StarWidget | Base widget class for building custom widgets |
📐 Layout System
Utilities for consistent, responsive GUI layouts:
| Component | Description |
|---|---|
| EntryRow | Label + widget row with consistent alignment |
| Spacing | Standardized spacing constants for UI consistency |
📦 Container Widgets
Higher-level containers for organizing content:
| Container | Description |
|---|---|
| ScrollablePanel | Scrollable content area with smooth scrolling |
| SectionCard | Card-style container with header and collapsible content |
| VerticalTabBar | Tab strip for multi-section screens |
🎨 Rendering Utilities
| Utility | Description |
|---|---|
| RenderBridge | Cross-version rendering abstraction layer |
| Colors | Standardized color palette constants |
🔧 Logging Helpers
| Utility | Description |
|---|---|
| LogLevelHelper | Dynamic Log4j2 level control for debug logging toggles |
📦 Installation
For Mod Developers
Add to your build.gradle.kts:
dependencies {
modstitchModImplementation("com.starshadow:starshadow-lib:${property("starshadow_version")}")
include("com.starshadow:starshadow-lib:${property("starshadow_version")}")
}For Players
Starshadow Lib is bundled inside mods that use it — you typically don't need to install it separately. If a mod requires it as an external dependency:
- Install Fabric Loader for your Minecraft version
- Install Fabric API
- Drop the Starshadow Lib
.jarinto yourmods/folder - Launch Minecraft
Supported: Minecraft 1.20.1 · 1.20.4 · 1.21.1 — Fabric only
🔨 Usage Examples
Toggle Widget
ToggleWidget toggle = new ToggleWidget(x, y, width, height,
Text.literal("Enable Feature"),
() -> config.isEnabled(),
value -> config.setEnabled(value));Slider Widget
SliderWidget slider = new SliderWidget(x, y, width, height,
Text.literal("Volume"),
0, 100, config.getVolume(),
value -> config.setVolume(value));Scrollable Panel
ScrollablePanel panel = new ScrollablePanel(x, y, width, height);
panel.addChild(new EntryRow(label, widget));
panel.addChild(new EntryRow(label2, widget2));🧩 Compatibility
| Mod | Compatibility |
|---|---|
| Fabric API | ✅ Required |
| Starshadow Config | ✅ Uses Lib for config screen widgets |
| Starshadow Menu | ✅ Uses Lib for mod list UI |
| Starshadow Splash | ✅ Uses Lib indirectly via Config |
📋 Requirements
| Dependency | Required? |
|---|---|
| Fabric Loader | ✅ Yes |
| Fabric API | ✅ Yes |
Starshadow Lib has no dependencies beyond Fabric itself — it's the foundation layer.
🌟 Build Better UIs
Stop reinventing widgets for every mod. Starshadow Lib provides a consistent, tested set of UI components so you can focus on what makes your mod unique.
Made with ❤️ by Ghent Starshadow Licensed under MPL-2.0 — free to use, share, and modify.
FAQ
How to install Starshadow Lib?
Install Fabric for your Minecraft version, download Starshadow Lib for the same version and loader, put the file into the mods folder and launch the game with the loader profile.
Which Minecraft versions does Starshadow Lib support?
Starshadow Lib has builds for Minecraft 1.20.1–1.20.6.
Is Starshadow Lib needed on the server?
Needed in the game and on the server