XFileTransferApp implements a file transfer system using Python's socket programming. It allows users to send and receive files over a network using a client-server architecture.
- Client-Server Architecture: Simple and efficient file transfer between a client and a server.
- Multi-threading: Supports concurrent file transfers using threads.
- Configurable Settings: Users can configure settings such as file paths, host IPs, and ports through a configuration file.
- Progress Tracking: Displays progress bars during file transfer using
tqdm
.
- Python 3.x
- Required libraries:
socket
asyncio
zlib
threading
pickle
hashlib
tqdm
configparser
localization
(custom module) [download from https://github.com/lavrentijav/XFileTransferApp/tree/localization (ver == 0.0.2)]
-
Clone the repository:
git clone https://github.com/lavrentijav/XFileTransferApp.git
-
Navigate to the project directory:
cd XFileTransferApp
-
Install any required libraries (if necessary):
pip install tqdm
Before running the application, you need to configure the settings in the config.ini
file. The application will create this file automatically if it does not exist. The configuration file contains the following sections:
[Settings server]
FILE = test.txt
MAX_PORTS = 4
HOST_IP = 127.0.0.1
HOST_PORT = 55500
MAX_PACKET_SIZE = 4096
[Settings client]
SAVE_PATH = .
HOST_IP = 127.0.0.1
HOST_PORT = 55500
[Languages]
LANGUAGE = en
Open a terminal and run the server:
python xtfa.py
2
Open another terminal and run the client:
python xtfa.py
1
Sending Files The client will prompt you to enter the file path you want to send, and the server will receive the file. License This project is licensed under the MIT License - see the LICENSE file for details.
Thanks to the contributors and the open-source community for their support and resources. Contact For any questions or feedback, please reach out to https://github.com/lavrentijav/XFileTransferApp/issues