A clean, cross-platform Python GUI app bootstrapper using PySide6 and uv. This starter pack helps you set up apps that require flexible environment handling (like Torch/CUDA), with minimal effort.
- Python: A compatible version (defaults to
3.11in launchers, but can be changed). Ensure it's in your system's PATH. - uv: The Python package manager. Install it if you haven't already:
See the official uv documentation for more ways to install.
pip install uv # or pipx install uv
- Python
3.11virtual environment withuv - Optional PyTorch installation (auto-matches CUDA version)
- Supports
--dryorUV_APP_DRY=1to skip PyTorch install (good for testing) - Cross-platform launchers:
.bat,.ps1,.sh - Clean GUI stub using
PySide6(can be replaced with your own GUI) - Friendly for beginners and pro devs alike
| File | Purpose |
|---|---|
main.py |
Launches your GUI app |
gui/gui_app.py |
PySide6 GUI logic (UVAppWindow) |
gui/__init__.py |
Makes gui a Python package |
install_torch.py |
Smart PyTorch installer (CUDA-aware) |
requirements.txt |
Base dependencies (synced by uv) |
run_uv.bat |
Windows launcher |
run_uv.ps1 |
PowerShell launcher |
run_uv.sh |
Linux/macOS/WSL launcher |
🪟 Windows (run_uv.bat)
:: Optional: Skip torch install (for testing)
set UV_APP_DRY=1
:: Run this script
run_uv.bat💻 PowerShell (run_uv.ps1)
$env:UV_APP_DRY=1 # Optional
./run_uv.ps1🐧 Linux/macOS (run_uv.sh)
export UV_APP_DRY=1 # Optional
chmod +x run_uv.sh
./run_uv.sh| Variable / Flag | Effect |
|---|---|
UV_APP_DRY=1 |
Skips PyTorch installation |
--dry |
Same effect when passed directly to install_pytorch.py |
| Python version | Controlled inside the launcher (python3.11 by default) |
If you're just testing the GUI, set UV_APP_DRY=1 in your script or terminal. This skips the heavy install step.
- Add translation files or multi-language GUI switching
- Drop in custom GUI logic (e.g. Whisper, TTS, transcription)
- Add
.envsupport for dynamic configuration
About UV-App-Starter-Pack
This project was created to simplify the often tedious process of setting up a new Python GUI application, especially when targeting multiple operating systems (Windows, macOS, Linux) and dealing with dependencies that require specific system configurations (like PyTorch with different CUDA versions).
Core Goals:
- Rapid Setup: Use
uvfor near-instantaneous virtual environment creation and dependency installation. - Cross-Platform: Provide ready-to-use launcher scripts (
.bat,.ps1,.sh) for a consistent experience everywhere. - Dependency Handling: Demonstrate robust dependency management, including the conditional installation of PyTorch based on detected CUDA capabilities.
- Clean Foundation: Offer a minimal PySide6 GUI application stub that is easy to replace or build upon.
Whether you're a beginner looking for an easy entry into GUI development or an experienced developer needing a reliable template for ML/AI or other complex applications, this starter pack aims to get you running faster.