Coder Social home page Coder Social logo

kafetzisthomas / safearchive Goto Github PK

View Code? Open in Web Editor NEW
40.0 4.0 5.0 100 KB

Securely backup and manage your files locally and in the cloud. Available for: Windows, macOS, Linux (desktop, server)

License: GNU General Public License v3.0

Python 100.00%
backup-tool google-drive python backup cloud encryption ftp linux macos server

safearchive's Introduction

Icon
SafeArchive


Allows you to backup your essential local files (+cloud support) quickly and schedule past backup deletions to optimize storage space.

How to Download: Click the "Releases" link on the right, then on the latest release, under 'Assets' click to download the zip file. (You might have to click "Assets" to view the files for the release)

Note: No matter the settings, the program runs completely locally on your own machine using the API key and Google Cloud project you created yourself, so even as the program's creator I will never have access to your account.

  • For the first run, I recommend you to exit the program after setting your preferences, so changes to be applied.

Features

  • Zip (backup) source path files to destination path
    • Compression method: ZIP_DEFLATED
    • allowZip64 is set to True (this parameter use the ZIP64 extensions when the zip file is larger than 4gb)
    • Compresslevel is set to 9 (its sometimes really slow when source path files are too large, saves storage space)
  • Set expiry date for old backups
  • Get backup size
  • Added cloud support (Google Drive)
  • Separate backup process from the main one (GUI) by creating a new thread to prevent script crash
  • Add system tray icon to hide the main window instead of terminating it when clicking the X button upper-right. Specifically, a taskbar icon appears with options to backup your files from anywhere without opening the GUI window, open the GUI window and exit the script
  • Restore past backups to their original location
  • Pop up system notifications when backup process completes, selected backup restored successfully, drive or cloud storage is running out, and drive hasn't reconnected for too long.

Manual Setup

  1. Download or clone the repo and install the requirements using:

    $ pip install -r requirements.txt
  2. How to Run:

    $ python3 main.py

Screenshots

Software Startup
(Drive Properties, Backup Options)


Software Startup (Drive Properties, Backup Options)

Restore Selected Backup


Restore Selected Backup

System Tray Icon
(Taskbar Icon)


System Tray Icon (Taskbar Icon)

Obtaining API Key

To sync your backups to your cloud account (Google Drive), you will need an "Oauth2" credential to make the GUI switch to work.

safearchive's People

Contributors

bitmelody avatar dependabot[bot] avatar kafetzisthomas avatar zeptofine avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

safearchive's Issues

Implement Automatic Background File Backup Feature

Implement a feature that allows the tool to perform automatic file backups in the background.

Users often forget to manually initiate file backups. This feature will enhance the usability of the tool by providing an option for automatic, periodic background backups. Users should be able to configure the timing of these automatic backups through the config file (JSON).

Note

  • Automatic file backups should occur in the background without disrupting the main application functionality.
  • The feature should be well-documented for users and contributors.
  • It is crucial that the automatic background backup functionality is compatible with both the python script and the executable file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.