Skip to main content

Menu-driven peer-to-peer encrypted file transfer for your LAN. No server, no admin, no setup.

Project description

python license platform

PROJECTDROPIT

A menu-driven peer-to-peer encrypted file transfer CLI for your local network.

  • 🛰 Auto-discovery on the LAN (zeroconf / mDNS)
  • 🔒 End-to-end encryption every session — X25519 ECDH + AES-256-GCM
  • SHA-256 integrity verification on every transfer
  • Zero setup — no internet, no cloud, no accounts, no admin/root, no pre-shared passwords
  • Premium TUI — rich panels, live discovery, progress, speed, ETA
  • 🔄 Auto-update check on launch (via PyPI, non-blocking)
  • 🐧 Linux + 🪟 Windows + 🍎 macOS, Python 3.8+

Install

pip install projectdropit

Or from source:

pip install .

Run

projectdropit -start

(projectdropit, projectdropit start, and projectdropit --start all work too.)

On first launch you must enter a device name — that's how others on the LAN will see you. Settings can be changed later from the menu.

Menu

1. Discover Devices     — live list of online peers on your LAN
2. Send a File          — pick a peer, pick a file, transfer starts
3. Incoming Transfers   — accept / reject offers, view history
4. Settings             — name, download folder, update check, about
5. Quit

Received files land in ~/projectdropit/ by default.

How it works

  • Discovery: zeroconf broadcasts <device-name>._projectdropit._tcp.local. with your TCP port and a name TXT record.
  • Transport: a fresh TCP socket per session.
  • Handshake: X25519 ECDH → HKDF-SHA256 → 32-byte AES key.
  • Stream: each frame is [12-byte nonce][4-byte length][AES-256-GCM ciphertext].
  • Integrity: sender streams a SHA-256 of the file; receiver computes its own and compares before marking the transfer complete. Mismatched files are deleted and the transfer fails loudly.

Windows firewall

The first time you run projectdropit, Windows shows the standard "Allow an app to communicate" dialog. Click Allow on private networks. No admin password is ever required. The app prints a friendly heads-up before opening its socket.

CLI flags

Flag Purpose
-start / --start / start launch the menu (default)
--no-update / -no-update skip update check on launch
-v / --version / version print version and exit
-h / --help / help show usage

Non-goals

No internet transfers. No accounts. No GUI. No admin requirement. No pre-shared passwords. No cloud.


© 2026 Zenith Open Source Projects. All Rights Reserved. Zenith is a Open Source Project Idea's by @roshhellwett

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

projectdropit-1.0.2.tar.gz (25.5 kB view details)

Uploaded Source

Built Distribution

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

projectdropit-1.0.2-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

Details for the file projectdropit-1.0.2.tar.gz.

File metadata

  • Download URL: projectdropit-1.0.2.tar.gz
  • Upload date:
  • Size: 25.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for projectdropit-1.0.2.tar.gz
Algorithm Hash digest
SHA256 e9828bc84ea57c59c83932d9dc338f4784ab74dfbb6e5c2325e5da1114a5ad7d
MD5 21b202f553aed9853841a8118640c179
BLAKE2b-256 6b408b362248bd4516fa5d33673a7362162262e3de273300e7dd391d6f1add14

See more details on using hashes here.

File details

Details for the file projectdropit-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: projectdropit-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 23.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for projectdropit-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0cefcf65fbcc1cc8845936401f9cfc08fb80e84fc42bfde32ff3358b7f2e6d69
MD5 ae2545a19cb9c4bd2aa35915b5cc57db
BLAKE2b-256 1e51fabe93c57b73c57ec88fb5e589b44f85c3f2f331a6daa57c645e840a1a5f

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