Skip to content

Commit 93fde8b

Browse files
committed
update docs and released 2026.4.17
1 parent 7f3374a commit 93fde8b

3 files changed

Lines changed: 63 additions & 0 deletions

File tree

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,17 @@ So, what could `zipapps` be?
3131
3232
> PS: The pyz extension can be modified to any character you want, such as `.py` and `.zip`.
3333
34+
# GUI
35+
36+
> Prefer a graphical interface? Try [uv-zipapps-gui](https://github.com/ClericPy/zipapps/blob/master/uv_zipapps_gui/README.md) — a Tkinter GUI for zipapps configuration and Python version management.
37+
>
38+
> ```bash
39+
> pip install uv-zipapps-gui
40+
> uv-zipapps-gui
41+
> # or run directly without installing:
42+
> uvx uv-zipapps-gui
43+
> ```
44+
3445
# Install & Quick Start
3546
3647
> pip install zipapps -U

changelog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# Changelogs
22

33
- 2026.4.17
4+
- add `uv-zipapps-gui` — Tkinter GUI for zipapps configuration and uv Python management
45
- add `uv_download_python` module for downloading Python via uv
56
- rename `uv_python.py` to `uv_download_python.py`
67
- add `--flatten` flag to promote versioned sub-directory to target root

uv_zipapps_gui/README.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# uv-zipapps-gui
2+
3+
A Tkinter-based GUI for [zipapps](https://github.com/Clericpy/zipapps) configuration and Python version management via [uv](https://github.com/astral-sh/uv).
4+
5+
## Features
6+
7+
- **ZipApps Config** — Visual editor for all zipapps build options: entry point, interpreter, pip packages, includes, unzip rules, lazy install, layer mode, and more. Build `.pyz` files or package distributable bundles (pyz + interpreter + launcher) with one click.
8+
- **Python Manager** — Browse, filter, install, and delete Python versions through uv. Auto-detects installed versions and sets the interpreter path for builds.
9+
- **Cross-platform** — Works on Windows, macOS, and Linux. Generates platform-appropriate launchers (`.bat`/`.vbs` on Windows, `.sh` on Unix).
10+
11+
## Install
12+
13+
```bash
14+
pip install uv-zipapps-gui
15+
```
16+
17+
Requires Python >= 3.12 and [zipapps](https://github.com/Clericpy/zipapps) >= 2026.4.17.
18+
19+
## Usage
20+
21+
```bash
22+
uv-zipapps-gui
23+
# or run directly without installing:
24+
uvx uv-zipapps-gui
25+
```
26+
27+
### Quick Start
28+
29+
1. **Python Manager tab** — Set uv path (auto-detected if in PATH), select a Python version, and click **Install Selected**.
30+
2. **ZipApps Config tab** — Configure build options, then click **pyz** to build a `.pyz` file, or **Dist** to create a distributable package.
31+
3. Use **Load Config** / **Export Config** to save and restore build settings as JSON.
32+
33+
## Build Options
34+
35+
| Option | Description |
36+
|--------|-------------|
37+
| Output (`-o`) | Path of the output `.pyz` file |
38+
| Interpreter (`-p`) | Python interpreter for the shebang line |
39+
| Entry point (`-m`) | `package.module:function` format |
40+
| Pip packages | Packages to install via pip |
41+
| Includes (`-a`) | Extra paths to copy into the archive |
42+
| Unzip (`-u`) | Names to extract at runtime (native extensions) |
43+
| Compress (`-c`) | Deflate compression |
44+
| Lazy install (`-d`) | Defer pip install to runtime |
45+
| Layer mode | Serverless-friendly layout without `__main__.py` |
46+
| Build ID (`-b`) | Skip duplicate builds based on file mtime |
47+
| Dist | Package pyz + interpreter + launcher for distribution |
48+
49+
## License
50+
51+
MIT

0 commit comments

Comments
 (0)