Skip to main content

Remember and retrieve file paths by name — from any program, anywhere.

Project description

wirez-py

              /$$
             |__/
 /$$  /$$  /$$ /$$  /$$$$$$   /$$$$$$  /$$$$$$$$        /$$$$$$  /$$   /$$
| $$ | $$ | $$| $$ /$$__  $$ /$$__  $$|____ /$$/       /$$__  $$| $$  | $$
| $$ | $$ | $$| $$| $$  \__/| $$$$$$$$   /$$$$/       | $$  \ $$| $$  | $$
| $$ | $$ | $$| $$| $$      | $$_____/  /$$__/        | $$  | $$| $$  | $$
|  $$$$$/$$$$/| $$| $$      |  $$$$$$$ /$$$$$$$$      | $$$$$$$/|  $$$$$$$
 \_____/\___/ |__/|__/       \_______/|________/      | $$____/  \____  $$
                                                      | $$       /$$  | $$
                                                      | $$      |  $$$$$$/
                                                      |__/       \______/

Remember and retrieve file paths by name — from any program, anywhere.

pip install wirez-py

Quick Start

import wires

wires.save("config", "/path/to/config.json")
wires.get("config")   # → "/path/to/config.json"

All Features

Save & Retrieve

wires.save("myfile", "/path/to/file.txt")      # register a file
wires.remember("myfile", "/path/to/file.txt")  # same as save

wires.get("myfile")      # → str path
wires.recall("myfile")   # same as get
wires.path("myfile")     # → pathlib.Path

List & Verify

wires.list_all()   # → dict of all registered wires
wires.verify()     # check for missing or moved files
                   # → {"myfile": "ok", "old": "missing", "data": "moved? found at /new/path"}

Fix & Remove

wires.update_path("myfile", "/new/location/file.txt")  # fix after a file moves
wires.remove("myfile")                                  # unregister

Dump

Copy all registered files into a folder:

wires.dump()               # → copies everything to ./wirez_dump/
wires.dump("my_backup")    # → copies to ./my_backup/

Pass File to a Program

Send a registered file directly to another program:

wires.passfile("myvideo", "vlc")      # open in VLC
wires.passfile("mydoc", "notepad")    # open in Notepad

Media Playback

Play registered mp4/mp3 files inside a defined screen region. Requires: pip install pygame opencv-python

# Define the screen region (x1, y1, x2, y2) in pixels
wires.set_playspace(0, 0, 1280, 720)

# Play a registered file (asks for permission first)
wires.play("myvideo")   # mp4
wires.play("mysong")    # mp3 / wav / ogg

# Get current playspace
wires.get_playspace()   # → {"x1": 0, "y1": 0, "x2": 1280, "y2": 720}

Debug & Logging

wires.enable_debug(True)            # verbose output to stderr
wires.enable_warnings(False)        # silence warnings
wires.set_log_file("wires.log")     # custom log file (default: ~/.wires/wires.log)
wires.set_log_file(None)            # disable file logging

Self-Update

wires.update()   # checks PyPI and updates if a new version is available

Or from terminal:

pip install --upgrade wirez-py

How It Works

Wires stores all registrations in ~/.wires/registry.json. Every program on the machine shares this registry, so a path saved in one script is instantly accessible in another.

Note: Wires stores paths, not files. If you move or delete a file, use wires.verify() to find broken wires and wires.update_path() to fix them. Use wires.dump() to make a physical backup copy of all your files.


License

MIT

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

wirez_py-1.0.6.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

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

wirez_py-1.0.6-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file wirez_py-1.0.6.tar.gz.

File metadata

  • Download URL: wirez_py-1.0.6.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0rc2

File hashes

Hashes for wirez_py-1.0.6.tar.gz
Algorithm Hash digest
SHA256 673bd0706c134a26548375a385629d592c6ab73a9074597d9f2e7b3ae3f6bb1c
MD5 cf0afa948ab8b538fbe70535e436f36d
BLAKE2b-256 35366a3308141ac573436c5feddcd14ebc23a3e5215d9166ba453f45bac029d8

See more details on using hashes here.

File details

Details for the file wirez_py-1.0.6-py3-none-any.whl.

File metadata

  • Download URL: wirez_py-1.0.6-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0rc2

File hashes

Hashes for wirez_py-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7ec9b28f5cb09d9750b189e32e063cce7d2daefc4672e006567f8eb523079911
MD5 c0b945b093921c508cf13761fcd12b4e
BLAKE2b-256 92f628ae1193914625a3124f8a6e9f242667b56ffad1442dd58d6623a4019e70

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