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_files/ 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.4.tar.gz (29.4 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.4-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: projectdropit-1.0.4.tar.gz
  • Upload date:
  • Size: 29.4 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.4.tar.gz
Algorithm Hash digest
SHA256 35fd886ed621a249701ea8650a6f5db193604167bdda64020a06063d815c2099
MD5 5d5a7dd7218c47e5bd0d976ea9ed3cc0
BLAKE2b-256 e7233e8a70b2cfa314e64ea179e28b843270ae334bc6601473c77437f7f1665f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: projectdropit-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 26.3 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a0e5a7c69424438db30c9c8900a72b534b7d331fdef0b4aeeb58032f7c934c3d
MD5 a7a9b05f14326856a1000bb657edff7d
BLAKE2b-256 acf170e3daf7216dfba7887a9638340e63925124bafa42c120ee24eec95daeae

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