Skip to content

kochaika/lan-files-exchanger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LAN Files Exchanger

A simple single thread HTTP server for exchanging files between devices on a local network like computers and smartphones. No extra software is needed to be installed on the smartphone.

Common use case

I sometimes need to download photos or videos from my smartphone, but I don't want to wait for cloud uploads or use mobile data. Modern iOS and Android devices aren't always easy to connect as external drive, and file transfer apps require installing something on your phone. This simple program solves my problem.

Features

  • Web-based file upload and download
  • Responsive interface
  • Directory navigation
  • Automatic local IP detection
  • Only built-in libraries are used; no extra dependencies are required

Client

Warning

This application provides no encryption, authentication, or access controls, making it unsuitable for use in public networks. Use it only on secure networks and shut it down after completing transfers.

Installation

Direct Use

# Clone the repository
git clone https://github.com/kochaika/lan-files-exchanger.git
cd FilesExchanger

# Run the server
python lan_files_exchanger.py

Usage

Running from Source

python lan_files_exchanger.py [working_dir] [options]

Server

The server will start and display a URL (e.g., http://192.168.50.213:8080/). Open this URL in a web browser on any device connected to the same network to access the file exchange interface.

Command-line Arguments

  • working_dir - The working directory path (default: current directory)

    • This is a positional argument that specifies the directory to serve files from
    • Example: python files_exchanger.py /path/to/files
  • --upload_disable - Disable file uploads (default: uploads enabled)

    • This is a flag that disables file uploads
    • Example: python files_exchanger.py --upload_disable
  • --max-file-size - Maximum file size in MB (default: 1000 MB = 1 GB)

    • This is an option that specifies the maximum file size for uploads
    • Example: python files_exchanger.py --max-file-size 500
  • --port - Port to run the server on (default: 8080)

    • This is an option that specifies the port number for the server
    • Example: python files_exchanger.py --port 9000

About

HTTP server for local files exchanging

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages