Skip to main content

A simple local network file transfer tool

Project description

localfiletransfer

A lightweight, no-framework LAN/same WiFi file transfer server written in pure Python WSGI. No Flask, no Django — just fast, clean file sharing on your local network.

🔧 Features

  • 📁 Upload files via browser
  • 📥 Download files (inline or direct link)
  • 🔐 Basic HTTP authentication (username/password)
  • 🚫 Upload size limit (default: 2GB)
  • ♻️ Automatic deletion of uploaded files after 1 hour
  • ⚙️ No external web frameworks — pure WSGI
  • 🔥 Gunicorn-ready

📦 Installation

pip install localfiletransfer

▶️ Usage

localfiletransfer --bind 0.0.0.0:5000

By default, this will start a file server on http://<your-local-ip>:5000.

Access from any device on the same LAN

Just open the URL in a browser on any device connected to the same WiFi/network.


🔐 Authentication

Basic HTTP Authentication is enabled by default.

Variable Default
LFS_USER admin
LFS_PASS admin

You can override credentials by setting environment variables before running:

LFS_USER=myuser LFS_PASS=mypass localfiletransfer --bind 0.0.0.0:5000

📤 File Upload

  • Uploads are done via browser using a simple form.
  • The Upload button is only enabled when a file is selected.
  • Maximum upload size is 2GB (configurable in code).
  • All uploaded files are automatically deleted after 1 hour.

🧹 Cleanup Behavior

A background thread checks every 10 minutes and deletes files older than 1 hour to keep the system clean.

No database or metadata is stored — pure file system handling.


🐍 Requirements

  • Python 3.6+
  • gunicorn

📦 Packaging

If you're installing from source:

git clone https://github.com/bivab0/localfiletransfer
cd localfiletransfer
pip install .

📄 License

MIT License © Bivab Das


🤝 Contributing

PRs are welcome! Just keep it lightweight and dependency-free.

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

localfiletransfer-0.1.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

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

localfiletransfer-0.1.0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file localfiletransfer-0.1.0.tar.gz.

File metadata

  • Download URL: localfiletransfer-0.1.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for localfiletransfer-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3bb2749630c33b9b6b965a3ef64ecf0fb805fb2002626b61f257da61d8ae1f01
MD5 80eac0853700ecc721b9a802eb65e7fb
BLAKE2b-256 9ae4fc9cbb34be9b04ceb5973e2cfc42ed7b14f09fa8bdd197bc3b2fd3569ead

See more details on using hashes here.

File details

Details for the file localfiletransfer-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for localfiletransfer-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b5d5b50baa79e61c2785198ec9e9bbe564cb3e8474efe6b73856ca1eac8d16ff
MD5 e59e78f1f8cbc0ed7767f5805aa23d68
BLAKE2b-256 5a7f1d29b7c3175fc1c880b55e27b509aa4ac2b8e74ea5e486da3bc753612daa

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