--- title: UIKit tags: uikit --- # UIKit **UIKit** is a UI framework for Stardew Valley / SMAPI (although it should be relatively simple to port it to any XNA / MonoGame context). UIKit tries to mimick as much behavior as possible from [Apple's](https://www.apple.com/) [UIKit](https://developer.apple.com/documentation/uikit) and [Auto Layout](https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/index.html) frameworks, used on their iOS and macOS platforms. A lot of the knowledge related to building iOS UIs also applies to this framework. UIs in UIKit are built using a view tree hierarchy, while actual view positioning and sizing is represented as a set of constraints (linear equations) between the views' "anchors". Source code: * [UIKit -- the framework](https://github.com/Shockah/Stardew-Valley-Mods/tree/dev/uikit/UIKit) * [UIKitTools -- additional (debugging) tools, in the form of an SMAPI mod](https://github.com/Shockah/Stardew-Valley-Mods/tree/dev/uikit/UIKitTools) --- <div style="float: right;"> <a href="https://hackmd.io/@Shockah/Skkq-TZMq">Getting started <i class="fa fa-chevron-right"></i></a> </div>