Skip to main content

Local clipboard-envelope file transfer helper

Project description

FileClip

FileClip is a small local web app for moving one file through text clipboard synchronization. It packages a dropped file into a self-contained FILECLIP/1 text envelope, copies that envelope to the local clipboard, and can later hydrate a compatible envelope back into a downloadable file.

FileClip does not sync clipboards, upload files, or store file contents on disk. It assumes another system already syncs clipboard text between the environments you care about.

Install

For CLI use:

uv tool install fileclip

Or with pipx:

pipx install fileclip

Run

fileclip

By default the server binds to 127.0.0.1, chooses an available port, and opens the browser.

Useful options:

fileclip --port 8080
fileclip --no-open
fileclip --passphrase-prompt

Plain Mode

Without a passphrase, FileClip creates plain base64 clipboard envelopes. This is convenient for trusted local clipboard-sync paths, but the file bytes are visible to anything that can read the clipboard envelope.

Passphrase Mode

With --passphrase or --passphrase-prompt, FileClip encrypts file bytes in the browser with PBKDF2/SHA-256 and AES-GCM before building the clipboard envelope.

--passphrase-prompt avoids putting the passphrase in shell history or the process list. The browser still receives the passphrase through local launch configuration so it can encrypt and decrypt files. Passphrase mode is a practical guardrail, not a high-assurance security boundary.

Encrypted mode protects payload bytes but does not hide envelope metadata such as filename, MIME type, file size, or SHA-256 hash.

Limits

FileClip has no artificial file-size limit, but browsers, clipboards, clipboard managers, and external clipboard-sync channels do. Large payloads may fail to copy, paste, or sync. Chromium on Windows has been observed to read very large text envelopes back as empty text at roughly 128 MiB of clipboard text.

Only schema 1 envelopes are supported. FileClip intentionally rejects unknown schema versions and mode mismatches.

Development

uv sync
uv run pytest
uv run fileclip --no-open

License

FileClip is distributed under the MIT 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

fileclip-1.0.0.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

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

fileclip-1.0.0-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file fileclip-1.0.0.tar.gz.

File metadata

  • Download URL: fileclip-1.0.0.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fileclip-1.0.0.tar.gz
Algorithm Hash digest
SHA256 8f62bb65e14aca9c364e44b80bd9e571b3befabc7c5d0bb821b70f8b9c86628e
MD5 7f4d2e2bc396e1d4c0a67a959fbb634a
BLAKE2b-256 5f3becf98cb4c82459db609951f37b53942d4a6d8a9d34abc8ae63bbca571fed

See more details on using hashes here.

File details

Details for the file fileclip-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: fileclip-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for fileclip-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7c61c247e5a96f238db300b402c95cff9578082c2578ee4674c470867a9c96bb
MD5 f469d1ae37bf97d63eb6cddc31213c00
BLAKE2b-256 fd89b1bf4ec8e7a8fa5d236b21e8fa235e2b66a6725da2b9c655611dc7e0b8da

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