Skip to main content

Simple backup utility

Project description

Watchback

License: MIT

Simple desktop backup app: pick a source folder, pick one or more mirror folders, click Sync, and Watchback keeps mirrors updated.

Quick Start

  1. Install:
pip install -e .
  1. Run:
watchback
  1. In the app:
  • Click Add Profile
  • Add at least 2 folders
  • Double-click one folder to mark it as [GROUND] (source of truth)
  • Click Save Profile
  • Click Sync

That is it. While sync is running, file changes are mirrored automatically.

Open Existing Mirror (No Profile Needed)

If you attach a drive that already contains a Watchback mirror, you can use it directly:

  1. Click Open Mirror
  2. Select the mirror folder
  3. Choose one of:
  • Explore Current
  • Explore Versions
  • Explore Snapshots

You can export files from the mirror without creating a local profile first.

What It Stores In Mirrors

Each mirror gets:

mirror/
├── current/    # live copy
├── versions/   # older file versions
├── snapshots/  # periodic state history
└── objects/    # content storage used by versions/snapshots

Build Executables (PyInstaller)

Generate a standalone executable for your host OS with:

python scripts/build.py

The script detects the current OS and runs the correct PyInstaller command.

  • On Windows, output is dist/watchback.exe
  • On Linux, output is dist/watchback

Important Notes

  • Sync direction is one-way: GROUND -> MIRROR.
  • Do not edit files inside mirror folders directly.
  • Settings and logs are stored in:
    • ~/.watchback/watchback.json
    • ~/.watchback/watchback.log

Requirements

  • Python 3.9+
  • Linux, macOS, or Windows

License

MIT. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

watchback-0.1.5.tar.gz (280.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

watchback-0.1.5-py3-none-any.whl (279.4 kB view details)

Uploaded Python 3

File details

Details for the file watchback-0.1.5.tar.gz.

File metadata

  • Download URL: watchback-0.1.5.tar.gz
  • Upload date:
  • Size: 280.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for watchback-0.1.5.tar.gz
Algorithm Hash digest
SHA256 7cb06dde1043ccacc19c5ca71074651a9bc50420913727310b6cdff0d36fcb11
MD5 85f62e20e2e47133dcc3ea5f1aa85b4e
BLAKE2b-256 0d03b0c2f951be46cf01a6eb95aae09f045b8c1366a74bb0b4520d815817990e

See more details on using hashes here.

File details

Details for the file watchback-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: watchback-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 279.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for watchback-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1f2e4225cd96ba6759b925e8aa165a4ce9dd842d6581039d1b5d600a5a6f550a
MD5 67289897d0e2aac26d8cc86f522f1b8b
BLAKE2b-256 e7d536fa45b5c58f1539cef440752d2a6ee0ac40e6f2d4076699b295cd270563

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page