File information

Last updated

Original upload

Created by

focustense

Uploaded by

focustense

Virus scan

Safe to use

About this mod

The definitive™ framework for building UI in Stardew Valley mods.

Requirements
Permissions and credits
Mirrors


Modders and Designers: Party like it's 2006!

React launched in 2013. Windows Presentation Foundation made its debut in 2006. Qt has been around since 1991. So why are you still building user interfaces using the computing equivalent of bone needles and ochre? There is a better way, I promise. Put down the rusty old pickaxe made of unknown yet unmistakably cheap materials and upgrade to the Iridium hotness.

StardewUI is:

  • A collection of useful layouts and widgets such as frames, lanes, buttons, dropdowns -- even a keybind editor and text input.
  • A bespoke UI language, StarML, that is very similar to HTML and can accomplish in 10 lines of markup would would otherwise take hundreds or even thousands of lines of code in a Stardew mod.
  • A data binding and event binding system that lets you implement MVP, MVVM, or MV-Whatever as you prefer.
  • Dynamic, realtime layout, so that you never have to manually calculate pixel positions ever again.
  • Customized asset handling for both views and sprites, with hot reload; edit your UI definitions in your favorite editor and see the changes in real time.
  • Widget trees (called Views) underneath it all, just like you'd find in Qt, Flutter, Windows Forms or any other framework.
  • Built-in controller support; no longer must you do a pile of extra work just to make a menu marginally usable with a gamepad.
  • Lots of extensibility features, and more to come.

Intrigued? Of course you are. So head on over to the Getting Started guide—yes, StardewUI has actual documentation!—or look at some of the examples (more to be added over time).

Syntax Highlighting

StarML is like HTML, but it isn't HTML. Syntax highlighting is available for Visual Studio, Visual Studio Code, and Notepad++. You can always download these extensions from the latest GitHub release; since they are for modders only, they won't be posted on Nexus Mods. More information is available at the Editor Setup page.

I'm not a modder. Should I download this?

Only if you are installing a mod that requires it. Installing StardewUI on its own will do absolutely nothing to your game. It is a modder's framework, like SpaceCore or Item Extensions.

Compatibility

StardewUI is an almost totally standalone framework; it only patches one method, used by SMAPI to handle unknown assets, in order to be able to load StarML views as regular assets.

In other words, StardewUI cannot break any other mod. However, it might be broken by other mods, especially if they change how some of the core MonoGame graphics functions work, like SpriteBatch. That said, it has been tested with mods like Clear Glasses and generally works great.

If you think you've found a compatibility issue, please ping me on the SV Discord first, before filing a bug report.

See Also