Skip to content

DoctorPok42/FastDrop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fastdrop

Frontend Average Response Time Backend Average Response Time

The easiest way to transfer files across devices

Fastdrop is a web application that allows users to easily transfer files between devices. It uses a peer-to-peer connection, so no files are ever stored on a server. This makes it a secure and private way to share files.

Features

  • 🔐 Privacy levels - Users can choose to share files with everyone, only close people, or only people on the same network
  • 👥 Rooms - Users can create rooms to share files with multiple people at once
  • 📁 Drag and drop - Users can drag and drop files to transfer
  • Transfer confirmation - Users must confirm the transfer before files are sent to ensure that they are not sent to the wrong device
  • 🔒 Secure - Files are transferred directly between devices, so no files are ever stored on a server
  • 📦 Chunked file transfer - Large files are split into smaller chunks and sent one by one to ensure reliable transfer
  • Fast - Files are transferred quickly and efficiently
  • 🌐 Cross-platform - Works on any device with a web browser
  • 🆓 Free - Fastdrop is completely free to use
  • 🛠️ Open source - Fastdrop is open source, so anyone can contribute to the project
  • 📱 Mobile friendly - Fastdrop is optimized for mobile devices, so users can easily transfer files on the go
  • 🚀 Docker - Fastdrop can be easily deployed using Docker for a hassle-free setup

Docker

docker run -d -p 3000:3000 --name fastdrop-frontend doctorpok/fastdrop:frontend-latest
docker run -d -p 8000:8000 --name fastdrop-backend doctorpok/fastdrop:backend-latest

Installation

  1. Clone the repository

    git clone git@github.com:DoctorPok42/FastDrop.git
  2. Install dependencies

    cd frontend && npm install && cd ../server && npm install
  3. Add .env file

    cd frontend && touch .env
  4. Add the following variables to the .env file

    URL_SERVER=http://localhost:3001
  5. Run the server and client in development mode with hot module replacement

    cd frontend && npm run dev
    cd server && npm run build && npm start

Usage

  1. Go to http://localhost:3000

  2. Connect a second device

  3. Drag and drop files to transfer them

  4. Enjoy!

Tech

Folder structure

  • components - Contains all the components used in the project
  • pages - Contains all the pages used in the project
  • public - Contains all the static files used in the project
  • styles - Contains all the styles used in the project
  • server - Contains the server code

License

MIT

Contributors

Languages