Menu

Tree [dc5974] master /
 History

HTTPS access


File Date Author Commit
 .github 2019-12-08 melvinkcx melvinkcx [fd9352] Added smart polling
 core 2019-12-22 melvinkcx melvinkcx [893dac] finalized download behavior
 test 2019-12-08 melvinkcx melvinkcx [c85b79] Refactored ConfigManager
 view 2019-12-22 melvinkcx melvinkcx [893dac] finalized download behavior
 .gitignore 2019-10-26 melvinkcx melvinkcx [d11c6d] Added test cases for s3 client, updated README
 LICENSE 2019-10-23 Melvin Koh Melvin Koh [91e603] Initial commit
 Pipfile 2019-12-08 melvinkcx melvinkcx [87ab1f] Added test cases; Reverted Pipfile changes
 Pipfile.lock 2019-12-08 melvinkcx melvinkcx [a4d0fc] Readded Pipfile.lock
 README.md 2020-04-04 Melvin Koh Melvin Koh [dc5974] Update README.md
 freeze.sh 2019-11-17 melvinkcx melvinkcx [2ffea2] Reinitialize clients in JsAPI after configs are...
 icon.ico 2019-11-08 melvinkcx melvinkcx [4e9fb4] Added pyinstaller spec
 main.py 2019-12-22 melvinkcx melvinkcx [e04d3d] Bumped version to 0.1

Read Me

Private File Saver - A desktop app that syncs local files to a private AWS S3 bucket

What is Private File Saver?

It is a cross-platform desktop app that sync local files to your private AWS S3 bucket.
AWS S3 is commercial-use cloud storage (object store) that provides end-to-end encryption, makes data stored inaccessible to
cloud providers.

Features:

  • Sync local files to AWS S3 bucket
  • No installation required! Download and run, that's it
  • Easy setup, all it takes is 3 simple steps
  • Able to detected file changes since last synced
  • Sync files from S3 bucket to local machine smartly

Supported platforms:

  • Linux (Tested on Debian-based systems and Manjaro)
  • MacOS (help wanted)
  • Windows (help wanted)

Download page:

Here

Why Private File Saver?

Private File Saver is not a cloud storage service, it is merely a tool that helps synchronising local files to AWS S3 buckets.
I personally don't trust conventional consumer cloud storage as much.
I prefer storage solution with more granular control (encryption, access control, etc).

Secure with encryption at rest and on transmit

With AWS S3, all files can be encrypted from end-to-end, making sure that your files are not accessible by any parties other than yourself.

Highly durable

Files (objects) stored in S3 buckets are automatically replicated into multiple facilities in an AWS region. AWS ensures 11-9s for its data durability over a given year.

Setup Guide

Prerequisite:

  • You will need an active AWS account

  • Download the executable

  • Double click it
  • Follow the initialization steps on the screen

Feedback or Issues?

You can create a Github issue, or drop me a message on Twitter @melvinkcx2.

Roadmap

For development roadmap, check the Github Project page.

For Developers

Application Architecture

Private File Saver is built using PyWebView + Vue.js, packaged with PyInstaller.

The core logic is implemented in Python, while the presentation layer is in Vue.js, glued with PyWebView.

Implementation Details

How files are compared?

Use md5sum: Private File Saver generates md5sum for all files and added it as metadata to the s3 object. The core logic compares md5sum from local files and remotely to determine if local file has changed.