Sebuah template starter untuk membangun aplikasi desktop dengan PySide6, dirancang dengan pendekatan file tunggal (main.py). Proyek ini menyediakan fondasi kokoh dengan fitur-fitur esensial yang sudah terintegrasi, memungkinkan Anda untuk langsung fokus pada logika inti aplikasi.
- Arsitektur File Tunggal: Semua kode berada di
main.pyuntuk kemudahan pengelolaan proyek skala kecil hingga menengah. - Startup Modern:
- Splash screen kustom dengan dukungan animasi GIF.
- Proses loading asinkron yang tidak memblokir UI.
- Kontrol Single-Instance:
- Memastikan hanya satu instance aplikasi yang berjalan.
- Membawa jendela aplikasi yang ada ke depan jika instance baru dibuka.
- Integrasi System Tray:
- Ikon di system tray dengan menu konteks (Show, Hide, Settings, Exit).
- Opsi "Minimize to Tray" yang dapat dikonfigurasi.
- Manajemen Pengaturan: Dialog pengaturan untuk mengelola preferensi aplikasi, yang disimpan ke file
.inimenggunakanQSettings. - Logging Komprehensif: Mencatat log ke konsol, file harian (info & error), dan menampilkannya secara real-time di dalam UI aplikasi.
- Struktur Kode Terorganisir: Mengadopsi pola yang terinspirasi dari MVVM untuk memisahkan data, tampilan, dan logika.
- Siap Build & Deploy: Dilengkapi skrip untuk packaging dengan PyInstaller dan membuat installer Windows menggunakan Inno Setup.
.
├── build/
│ ├── inno-app-id.txt
│ ├── inno-compiler.iss
│ └── inno_compiler.py # Skrip untuk membuat installer
├── dist/ # Output dari proses build (PyInstaller & Inno Setup)
├── icons/
│ ├── app.gif # Contoh splash screen animasi
│ ├── app.ico # Ikon aplikasi
│ └── app.png
├── main.py # File utama aplikasi
├── requirements.txt # Daftar dependensi Python
└── README.md
main.py: Berisi seluruh kode sumber aplikasi Anda.icons/: Tempat untuk menyimpan semua aset gambar seperti ikon, logo, dan splash screen.build/: Berisi skrip dan konfigurasi untuk proses packaging, seperti membuat installer.dist/: Direktori default tempat hasil compile PyInstaller dan installer Inno Setup akan disimpan.
- Install
uv(jika belum ada):powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
- Install dependensi:
uv sync
- Jalankan aplikasi:
uv run main.py
Proyek ini dilengkapi dengan skrip untuk membuat file executable (.exe) menggunakan PyInstaller dan membungkusnya dalam sebuah installer Windows menggunakan Inno Setup.
- Inno Setup 6: Pastikan Anda telah menginstal Inno Setup 6.
- Konfigurasi Path: Buka file
build/inno_compiler.pydan pastikan variabelinno_setup_compiler_pathmenunjuk ke lokasiISCC.exedi komputer Anda.# Path ke ISCC.exe (sesuaikan dengan instalasi Inno Setup Anda) inno_setup_compiler_path = r"C:\Program Files (x86)\Inno Setup 6\ISCC.exe"
Cukup jalankan skrip batch yang telah disediakan dari root direktori proyek:
.\build\build_binary_installer.batSkrip ini akan secara otomatis menjalankan PyInstaller untuk membuat executable dan kemudian menjalankan Inno Setup untuk membuat installer. Hasil akhir akan tersedia di dalam folder dist/.