Welcome to Local DC++, a desktop application that runs on intra-network and replicates the features of DC++. The application uses various networking, multithreading concepts, and algorithms to achieve the best file transfer speed possible. This application will run on any local area network for chatting and file-sharing purposes. Downloading speed in Local DC++ will always be higher than one can get from torrent or any other website.
https://drive.google.com/file/d/181OI4Pi7mb5Mz7dJjg2APZqd32FUAyir/view
- Ashes Mondal (2019IMT-021)
- Utkarsh Agnihotri (2019IMT-109)
- Anurag Shrivastava (2019IMT-020)
- Responsive
- User Friendly Interface
- Login Page
- Select multiple files for sharing
- Download multiple files
- Search Functionality for users and files
- Chatting facility
- Scrollable, when required
- Secure authentication
- Multithreading concepts
- End to End encrypted messaging
- Asynchronised File Sharing
- Real time data updation
- Updating Metadata on Database
PyQt5
for creating frontend
socket
for socket programmingthreading
for multithreadingqueue
for thread safe data structurejson
for sending text based structure datapickle
for serializing and de-serializing python object into binary filesbase64
for encoding and decoding messagestime
,sys
,os
,getpass
bcrypt
for passwordspycryptodome
for Hybrid encryption(AES + RSA)
mysql-connector-python
for database
tqdm
for progress bar in consoletabulate
for displaying tables in consolepython-dotenv
for environment variables
Clone the repository
git clone https://github.com/Ashes-Mondal/Local_DC_plus_plus.git
Install the python modules
pip install -r requirements.txt
At this point you can add a .env
file in the main directory following the .env.example
file, and now we can run the application by first starting the server and then running the GUI:
python server.py
python app.py