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.
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.
- 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
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.
# Clone the repository
git clone https://github.com/kochaika/lan-files-exchanger.git
cd FilesExchanger
# Run the server
python lan_files_exchanger.pypython lan_files_exchanger.py [working_dir] [options]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.
-
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

