96 lines
6.0 KiB
Markdown
96 lines
6.0 KiB
Markdown
# 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).
|
|
|
|
---
|
|
<br>
|
|
|
|
## 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).
|
|
|
|
|
|
|