A high-speed data pipeline library
Project description
NextDrop
NextDrop is a high-speed data pipeline capable of transferring large files efficiently, with a peak transfer rate allowing for 3GB of data to be received in under 10 seconds, making it a standout system for rapid file transfers.
Speed in Peak transfer rate (Latest): 3GB /5sec
DiamondGotCat's Protocols
UltraDP: Most Fast File Transfer Protocol in My Projects
8 Gbps(1 GB/s) in My Wi-fi
NextDP(NextDrop): You can use Official Python Library
4.8 Gbps(0.6 GB/s) in My Wi-fi
USFTP: Built-in File integrity check function (SHA-256)
2 Gbps(0.25 GB/s) in My Wi-fi
Installation
To install NextDrop, ensure you have python33.7+ installed along with the required dependencies. Run the following command:
Library Version
pip3 install next-drop-lib
Command-Line Version Requiments (main.py)
pip3 install nercone-modern aiohttp tqdm zstandard
GUI Version Requiments (NextDrop.py)
pip3 install nercone-modern PyQt6 aiohttp tqdm zstandard
Usage
NextDrop operates in two modes: sending and receiving. Below are the details for each mode.
Library (Example)
import asyncio
from next_drop_lib import FileSender, FileReceiver, NextDropGeneral
import threading
import time
async def file_send_example():
await FileSender("localhost", port=4321, file_path="./test.txt").send_file()
async def file_receive_example():
await FileReceiver(port=4321, save_dir="./recived/").start_server()
await asyncio.sleep(5)
def start_server():
asyncio.run(file_receive_example())
if __name__ == '__main__':
# Start the server in a separate thread
threading.Thread(target=start_server).start()
# Start the file sender
asyncio.run(file_send_example())
CLI Sending Mode
To send a file, use the following command:
python3nextdrop.py send <target_ip> --port <port> <file_path> [--threads <num_threads>]
<target_ip>: IP address of the receiving server.--port <port>: Port on which the receiver is listening (default is4321).<file_path>: Path to the file you want to send.--threads <num_threads>: Number of threads to use (default is1).
Example
python3nextdrop.py send 192.168.1.10 --port 4321 /path/to/file.zip --threads 4
CLI Receiving Mode
To start a receiver server, use the following command:
python3 nextdrop.py receive --port <port> <save_dir> [--compress]
--port <port>: Port to listen on for incoming file transfers (default is4321).<save_dir>: Directory where received files will be saved.
Example
python3 nextdrop.py receive --port 4321 /path/to/save --compress
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file next_drop_lib-2.1.0.tar.gz.
File metadata
- Download URL: next_drop_lib-2.1.0.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6da6dfb65023a23c5eca40c45c870002f8e120164471c152f93e97f309a9ee81
|
|
| MD5 |
d47e50b1ae53ae6e7f6b15b32f178aad
|
|
| BLAKE2b-256 |
78f2f2907776b07999657d2cffa37dda5dc181745c1c3abfec43137919fcec14
|
File details
Details for the file next_drop_lib-2.1.0-py3-none-any.whl.
File metadata
- Download URL: next_drop_lib-2.1.0-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17d71f2ad728f9b6e050ed433edc0ca7221ea33eeb2f264fe5700bfe2a12b7f5
|
|
| MD5 |
f7fe4946e340b872af4bf3a0df805966
|
|
| BLAKE2b-256 |
93e2c80a53bff02595e64cbf7460de8717968c1aed6c235a36f67215882d2f2a
|