Go to file
2025-12-17 15:55:28 +01:00
.vscode Initial commit for profile BackupTools 2025-05-07 14:02:56 +02:00
backuptools aggiunti eta 2025-12-17 15:55:28 +01:00
doc modificato gestione delle esclusioni, aggiunto tasto per aggiungere esclusioni di default 2025-12-17 15:14:43 +01:00
.gitignore Chore: Stop tracking files based on .gitignore update. 2025-05-07 14:04:01 +02:00
backup_config.json modificato gestione delle esclusioni, aggiunto tasto per aggiungere esclusioni di default 2025-12-17 15:14:43 +01:00
backuptools.ico add version, icon 2025-05-07 14:39:49 +02:00
backuptools.spec modificato gestione delle esclusioni, aggiunto tasto per aggiungere esclusioni di default 2025-12-17 15:14:43 +01:00
pyproject.toml add requirements 2025-11-12 12:58:58 +01:00
README.md update readme 2025-05-07 14:40:55 +02:00
requirements.txt add requirements 2025-11-12 12:58:58 +01:00

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).