Shampoo lets you build GUIs using a markup language. It supports live-coding, so you can create and debug interfaces in real-time. Shampoo was created for rapid, lightweight interface creation and user input handling. Its development began in early 2019 and went through several major pivots and rewrites since.
[!] Shampoo is currently pre-version 1.0. Expect code cleanup, optimizations, and refactors as v1.0 approaches. These patches should not break existing integrations in unmodified
[!] The Shampoo framework documentation is hosted on Github. Please note that the docs are WIP. The highly in-depth demo included with the framework should be more than enough to show you a majority of features.
[!] Shampoo has only been tested and verified to work on GMS 2.3 Windows export (including YoYo Compiler) and MacOSX export.
Live-coding development environment so you can create and debug interfaces in real-time
Lightweight setup: it only takes a single function call to get the framework initialized
File checksum verification to hinder tampering
A unique markup-like language to build interfaces quickly
Customization of colors, fonts, sprites, sizes, and more
Built-in easing/tween engine to give your menus juice
Buttons with ability to enable/disable them
Checkboxes and toggles
Radio button groups
Text input with maxlength and numbersOnly attributes
Sliders with customizable min/max ranges and intervals
Tabbing/arrow key support for navigating elements
Custom callback functions and in-line hyperlinks
Sound effect (and toggling) support
Tooltips and hover effects
Hex, blue-red-green, and string color support, with a built-in palette
onLoad, onStep, onClose, onDraw, onDrag, onResize event listeners
Out-of-the-box window resizing support
Arrow key/tab navigation
Framework isolated from the included demo
Improved HTML5 support
iOS, Android, and console support
More advanced textareas and input interception
More efficient text parsing and character escaping
Element padding, margins
Lists, expansion of indentation logic
Terms of Purchase:
This framework source code is sold as-is. You will receive free updates as they release on this website.
The price is subject to change (e.g. limited-time promotions) or may vary based on the marketplace.
Support, bug fix requests, and general inquiries will be handled on a case-by-case basis at earliest possible convenience of Shampoo's sole developer.
No parts of your purchase may be re-distributed, re-sold, or bundled with existing assets.
After purchasing this source code, it can be used in both commercial and non-commercial projects indefinitely. For teams larger than 3 developers, please consider purchasing additional copies. While not necessary, it's a way to support ongoing development.
No credit attribution is required but appreciated (@Zack Banack).
Refund requests must go through this website.
A minor update from major update v0.9.2. Resolved issue where input sliders could not accept
Full changelog: https://zackbanack.itch.io/shampoo/devlog/209417/v0921-release