_____
|_ _| ___ __
| || | | \ \ /\ / /
| || |_| |\ V V /
|_| \__,_| \_/\_/
Tiny UI wrapper for
CLI tools
Tuw provides a very simple GUI for your scripts.
All you need is a JSON file and a tiny executable.
No need for compilers, browsers, or huge executables!
- Define GUI in JSON
- Embed JSON into exe
- Save arguments
- Input paths by drag and drop
- Cross-platform (Windows, macOS, Linux, BSD, etc.)
- Native look and feel
- Portable
- Small size
- UTF-8 support
You can download executables from the release page
Tuw*-Windows*.zip
is for Windows (7 or later.)Tuw*-macOS*.tar.bz2
is for macOS (10.9 or later.)Tuw*-Linux*.tar.bz2
is for Linux (with GTK3.14, GLIBC2.15, and GLIBCXX3.4.21, or later versions of the libraries.)
There are some JSON files to learn how to define GUIs.
There is a schema for gui_definition.json
.
You can use it to validate definitions while editing files.
For VSCode, you can add the schema path to settings.json
(File > Preferences > Settings > JSON:Schemas > Edit in settings.json
.)
"json.schemas": [
{
"fileMatch": [ "gui_definition.json" ],
"url": "https://raw.githubusercontent.com/matyalatte/tuw/main/schema/schema.json"
}
]
Files in this repository are available under the MIT license.
Project | About | License |
---|---|---|
libui-ng | GUI framework | MIT |
RapidJSON | JSON parser | MIT |
subprocess.h | Command processor | Unlicense |
c-env-utils | Utilities for environment info | MIT |
tiny-str-match | String validator | MIT |