Skip to main content

Plug in any USB drive, SD card or voice recorder — it's copied to your PC. Fully local, always on.

Project description

REEL

Plug it in, copied. Reel is a fully-local tool that copies every USB drive, SD card or voice recorder you plug in — the whole thing, every folder, every file, exactly as it is — into a Reel folder in your Documents. Then it tidies the file names. Automatically, every time, without you touching anything.

Everything stays on your machine. Your devices are never wiped. The library is just folders — open it in Explorer any time.


Why this exists

Anyone can drag files off a USB stick in Explorer. Almost nobody actually does it — every time, completely, without duplicates. That's the problem Reel solves:

  • It happens without you. Reel runs from login. Plug a drive in and it's copied — even when you're in a hurry, even when you forget. A backup habit you install once instead of remember forever.
  • Nothing copies twice. Re-plug the same stick and only what's new comes over. If a file was renamed or moved on the device (recorders renumber files all the time), Reel recognises it by its actual content — a full byte-for-byte hash, never a guess — and just moves its existing copy into place instead of copying it again.
  • Nothing gets forgotten. Every folder (empty ones too), every file, hidden files included. The only things skipped are unreadable OS system folders (recycle bins, System Volume Information) — and those are reported on screen, never silently dropped. If you delete a file from your library, Reel notices and copies it fresh next plug-in.
  • Names get tidied — structure never moves. A recorder's cryptic 250608_1432.mp3 becomes 2025-06-08_1432_reel-7F3A.mp3, photos get a sortable date prefix, documents keep their names — all inside their original folders. Don't want it? reel rename off gives you pure 1:1 copies.
  • It works both ways. Lose the SD card? reel transfer writes the copy back onto a blank stick — original folders, original filenames, exactly as the drive was.

Explorer is a tool you have to operate. Reel is a habit you install.

What your library looks like

Documents/Reel/
├── IC RECORDER/                  ← one folder per drive, copied verbatim
│   ├── REC_FILE/FOLDER01/2026-06-08_1432_reel-7F3A.mp3
│   └── MUSIC/…
├── KINGSTON/
│   ├── DCIM/2026-05-14_0941_IMG_0421.jpg
│   ├── Holiday/Tax Return 2025.pdf      ← documents keep their exact name
│   └── Empty Folder/                    ← even empty folders are kept
└── .reel/                               ← Reel's memory (what's already copied)

Install

pip install reel-sync

(The package is reel-sync; the command is just reel.) Needs Python 3.11+.

From this folder (development)

pip install -e .

Use it

One command, once:

reel setup

Name your Reel, and it installs itself: it starts with Windows and watches quietly in the background, forever. From then on —

Plug a drive in → a window pops up and shows the copy with live progress bars. Done → a toast slides in ("Reel — synced 12 files from KINGSTON") and the window tucks itself to the taskbar. Unplug → the window vanishes. The watcher keeps waiting for the next drive.

That's the entire workflow. The other two commands, for when you want them:

reel transfer          # put a copied drive back onto a blank stick,
                       # original folders & original names (plug the stick in first)
reel rename off        # pure 1:1 copies from now on — names untouched
reel rename on         # tidy, sortable names (the default)

reel transfer never overwrites anything already on the stick, and pauses the watcher by itself while it writes. (Copied more than one drive? It picks by the stick's label, or tell it: reel transfer "IC RECORDER".)

Config (optional)

Reel works with no config at all — copies land in Documents/Reel. To change anything, drop a config.toml next to the package, in the folder you run from, or at ~/.reel/config.toml:

[library]
sync_root = "D:/MyBackups/Reel"    # where copies land

[watch]
interval_sec = 4                   # how often it looks for a drive
close_on_unplug = true             # close the pop-up when you unplug

[ui]
theme = "dark"                     # colours for a dark terminal

Notes

  • Privacy: nothing ever leaves your machine.
  • Safety: Reel only ever reads your devices — it never writes to or deletes from them (the one exception is reel transfer, which writes exactly what you asked onto the stick you plugged in, and never overwrites).
  • Honesty: anything Reel can't read, it tells you about on screen. No silent skips, ever.

REEL v3.0.0 — plug it in, copied.

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

reel_sync-3.0.0.tar.gz (36.8 kB view details)

Uploaded Source

Built Distribution

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

reel_sync-3.0.0-py3-none-any.whl (40.4 kB view details)

Uploaded Python 3

File details

Details for the file reel_sync-3.0.0.tar.gz.

File metadata

  • Download URL: reel_sync-3.0.0.tar.gz
  • Upload date:
  • Size: 36.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.4

File hashes

Hashes for reel_sync-3.0.0.tar.gz
Algorithm Hash digest
SHA256 b0202fc328407bb785d870c93a109f302f2ca31821d6b15a0c89ded6612ed46c
MD5 ed68f534998763521ee1c0a8657da3a6
BLAKE2b-256 96b85624252a51172475cdb6a91dcd9451a1969d9f2a29d2d213e2166d48f1b0

See more details on using hashes here.

File details

Details for the file reel_sync-3.0.0-py3-none-any.whl.

File metadata

  • Download URL: reel_sync-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 40.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.4

File hashes

Hashes for reel_sync-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4b97d2b15c05c07676b3b838f0b38017fc3141eef939e8c66a9685a70c293dc1
MD5 f083a6f7752b2810e0b5f700c4f7858c
BLAKE2b-256 4c7d2668db541aec35c5d95ab194fc22a864677de6baa2b0e53a3dc47523ed43

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