gohud

Widgets

Every one is .new() and add_child() — no scene files, no autoload. Notes marked 🛑 are traps met on real screens, not theory.

Floating windows

Popups, sheets and dropdowns all use this one.

Telling the player something

Floats at one side with no scrim.

HUD

Polish the big panels all you like — what catches the eye is always something small: a word split in two, a glow chopped off, a…

Waiting, telling, counting

Sits at the bottom (or the top), above the safe area and the keyboard, and leaves on its own.

Forms and lists

One line at the top of a five-field form saying "check your input" does not say which field.

Shapes games actually use

Familiar web shapes, rebuilt around what a game needs from them.

Over the screen

GoSheet comes from the bottom, which is right for a phone held upright.

GoStyle — one place things are made

Call Button.new() directly and padding, height and wrapping drift slightly from screen to screen.