Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
interface
safer
tests
.gitignore
.travis.yml
LICENSE
README.md
icon.png
logo_smw.png
main.py
requirements.txt
setup.cfg
setup.py

README.md

Safe My work

SafeMyWork save all files in the given directory into another directory to keep your work safe and avoid loosing data and time.

Documentation Status Build Status

What for ?

SafeMyWork is intend for people who handle lot of files which can be texts, images, songs... The aim is to avoid losing documents.

Run SafeMyWork and select your working folders. Then while you are working, every a certain amount of time, all files in this folder will be copying into a separated folder. It keeps your files safe if you forget to save your work or delete accidentally files.

It can also synchronise two folders.

Current state

Version

Current version is 0.5

Features

  • watch different directories
  • specify directories, files and extensions to exclude
  • interface (gtk)
  • automatic saving tab
  • sychronisation tab
  • conflicts file resolution
  • confirm dialog
  • safe mode:
  • 3 Go maximum folder size to copy
  • 250 maximum shown conflicts in conflicts dialog

TODO

  • files in confirm dialog in a ListView widget with toggle buttons
  • Conflict dialog: be able to keep the two files*
  • Add unit tests
  • dialog for errors (sync)
  • show the size to estimate how long will it take
  • show the size of safe_doc
  • 3 Go limit in settings
  • PEP 471 : use of os.scandir instead of walk

Other concepts

  • make an history of each files
  • compress files
  • add little icon to symbolize file explorer in open folder buttons

Launch the app

Run python3 main.py.

Documenation

You will need to have Sphinx installed. Then run python3 -m pip install sphinx_rtd_theme for the ReadTheDocs theme. To build the doc:

git clone git@github.com:Thykof/SafeMyWork.git
cd SafeMyWork
cd docs
build html

The documentation is in docs/_build/html/index.html.

License

SafeMyWork is under the GNU GPL v3 license.