Skip to content

Transfer files between devices utilizing web browser and REST API.

Notifications You must be signed in to change notification settings

pettmatt/local-file-transfer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 

Repository files navigation

About

In its core "Local file transfer application" or LFT is a REST server that allows users to move files between devices that are in the same network using a browser. User can create their own web interface and modify the server itself, but in order to use the server they need to host it somewhere, locally hosted is the recomended way to go. You can either donwload the binaries or build the server and the interface yourself. More detailed instructions can be found in file-transfer-server and web-interface directories.

Good to know

There are multiple things that could be improved, for example PWA-application as the interface could improve user experience and the server could be more secure, which could enable it to be used in greater scale. At the moment this application is recommended to be used in smaller scale where couple of people share their files between reasonable amount of devices.

Intalling and running

The server

Server is build using Rust, so running the application needs Rust in order to run on the machine (how to install).

Environment variables:

HOST_PORT=3003
HOST_ADDRESS=localhost
THREAD_POOL_COUNT=1

Compile and run the program:

cargo run

Web interface

Interface is build on React library and requires Node.js and npm to be installed on the machine.

# Install depedencies
npm intall

# Run the application
npm run start

Docker

The application can be also run in docker, which runs the application in containers and doesn't require other than Docker to run.

Web interface

NOTE: Use network address to visit the application.

docker build -t web-interface .
docker run -p 5173 web-interface

File transfer server

docker build -t file-server .
docker run -e HOST_ADDRESS=0.0.0.0 -e THREAD_POOL_COUNT=1 -p 7878 file-server

About

Transfer files between devices utilizing web browser and REST API.

Resources

Stars

Watchers

Forks

Packages

No packages published