# Backup Manager Pro ## English ### Overview Backup Manager Pro is a user-friendly desktop application designed to help you easily create compressed backup archives (ZIP files) of your important folders. It offers a graphical interface to manage backup configurations, define exclusion rules, and organize different backup tasks using profiles. This tool is ideal for users who need a simple yet effective way to back up project files, documents, or any other critical data to a local or network drive. ### Features * **Intuitive Graphical User Interface (GUI):** Easy-to-use interface built with Tkinter. * **Source and Destination Selection:** Easily browse and select source folders for backup and destination folders for the archives. * **File Exclusion Rules:** Define comma-separated patterns (e.g., `*.log`, `.tmp`, `node_modules/`) to exclude specific files or folders from your backups. * **Profile Management:** * Save different backup configurations (source, destination, exclusions, description) as named profiles. * Quickly load profiles to switch between backup tasks. * Update and delete existing profiles. * **Backup Description:** Add an optional description to each backup archive for better identification. * **Progress Indication:** Visual progress bars for file scanning and ZIP archive creation. * **Detailed Backup Summary:** Before finalizing the backup, view details about included/excluded files and statistics by file extension. * **Timestamped Archives:** Backup ZIP files are automatically named with a timestamp and the source folder name for easy organization (e.g., `YYYYMMDD_HHMMSS_MyProject.zip`). * **Background Operations:** File scanning and zipping processes run in separate threads to keep the UI responsive. * **Configuration Persistence:** All profiles and the last used settings are saved locally in a `backup_config.json` file. ### Technology Stack * **Python 3** * **Tkinter** (for the GUI, part of Python's standard library) * Standard Python libraries for file operations (`os`, `pathlib`, `shutil`) and ZIP creation (`zipfile`). ### Getting Started 1. **Prerequisites:** * Python 3 installed on your system. * (Optional for development/running from source) Familiarity with running Python scripts. 2. **Running the Application:** * If you have an executable version (e.g., created with PyInstaller), simply run the executable. * To run from source: 1. Clone or download the repository. 2. Navigate to the project's root directory (e.g., `BackupApp/`). 3. Ensure all Python package dependencies (if any beyond standard library) are installed. 4. Run the application using: `python -m backup_app` (Assuming `backup_app` is the name of the main Python package folder). ---
## Italiano ### Panoramica Backup Manager Pro è un'applicazione desktop intuitiva progettata per aiutarti a creare facilmente archivi di backup compressi (file ZIP) delle tue cartelle importanti. Offre un'interfaccia grafica per gestire le configurazioni di backup, definire regole di esclusione e organizzare diverse attività di backup utilizzando i profili. Questo strumento è ideale per gli utenti che necessitano di un modo semplice ma efficace per eseguire il backup di file di progetto, documenti o qualsiasi altro dato critico su un'unità locale o di rete. ### Funzionalità * **Interfaccia Utente Grafica (GUI) Intuitiva:** Interfaccia facile da usare costruita con Tkinter. * **Selezione Sorgente e Destinazione:** Sfoglia e seleziona facilmente le cartelle sorgente per il backup e le cartelle di destinazione per gli archivi. * **Regole di Esclusione File:** Definisci pattern separati da virgola (es., `*.log`, `.tmp`, `node_modules/`) per escludere file o cartelle specifiche dai tuoi backup. * **Gestione Profili:** * Salva diverse configurazioni di backup (sorgente, destinazione, esclusioni, descrizione) come profili nominati. * Carica rapidamente i profili per passare da un'attività di backup all'altra. * Aggiorna ed elimina i profili esistenti. * **Descrizione Backup:** Aggiungi una descrizione opzionale a ciascun archivio di backup per una migliore identificazione. * **Indicazione di Progresso:** Barre di progresso visive per la scansione dei file e la creazione dell'archivio ZIP. * **Riepilogo Dettagliato del Backup:** Prima di finalizzare il backup, visualizza i dettagli sui file inclusi/esclusi e le statistiche per estensione di file. * **Archivi con Timestamp:** I file ZIP di backup vengono automaticamente nominati con una marca temporale e il nome della cartella sorgente per una facile organizzazione (es., `AAAAMMGG_HHMMSS_MioProgetto.zip`). * **Operazioni in Background:** I processi di scansione dei file e di compressione ZIP vengono eseguiti in thread separati per mantenere l'interfaccia utente reattiva. * **Persistenza della Configurazione:** Tutti i profili e le ultime impostazioni utilizzate vengono salvati localmente in un file `backup_config.json`. ### Stack Tecnologico * **Python 3** * **Tkinter** (per la GUI, parte della libreria standard di Python) * Librerie standard Python per operazioni sui file (`os`, `pathlib`, `shutil`) e creazione ZIP (`zipfile`). ### Come Iniziare 1. **Prerequisiti:** * Python 3 installato sul tuo sistema. * (Opzionale per sviluppo/esecuzione da sorgente) Familiarità con l'esecuzione di script Python. 2. **Esecuzione dell'Applicazione:** * Se disponi di una versione eseguibile (ad esempio, creata con PyInstaller), esegui semplicemente l'eseguibile. * Per eseguire da sorgente: 1. Clona o scarica il repository. 2. Naviga nella directory principale del progetto (es., `BackupApp/`). 3. Assicurati che tutte le dipendenze dei pacchetti Python (se presenti oltre alla libreria standard) siano installate. 4. Esegui l'applicazione utilizzando: `python -m backup_app` (Assumendo che `backup_app` sia il nome della cartella principale del pacchetto Python).