Skip to content

Noe-Favier/filedrop-v2

Repository files navigation

FileDrop V2 ?

Story

this web app is a reengineering of FileDrop V1 which is a rust app created without any dependency.

Here, FileDrop V2 was realized with A LOT of lib (the most i could). Furthermore, it was realised insanely faster (and working better) (4Hours for V2 // +10Hours V1) to achieve the same thing (even if i was learning the language in the first place).

stuff i'll do

just finishing another project rn but i'll add those features next :

  • security (locking specific files with psswd) (+ an optional master password to get on the app)
  • admin panel (in order to have some stats + setup security psswds)
  • upload button
  • a CSS rework (drop bootstrap + responsive)
  • stay "easy to setup" and multiplatform

Demo

FiledropV2 is running at noais.fr if u wanna see

How to setup :

.env

settings which can be set in .env :

  • files_path : (default : /var/file_drop_files) > path to the folder where files will be stored
  • allow_create : (default : true) > is FileDrop allowed to create that dir if it doesn't exists ?

More conf

This project was realised with rocket.rs. U will find the conf file of the web server in Rocket.toml.

for example, u will be able to :

  • change the port
  • enable tls (=https) (if you can) (i would do a reverse proxy)
  • change the secret key (see below)

Changing secret_key

IMPORTANT ! on linux, run openssl rand -base64 32 and replace the field 'secret_key' with the value returned by that command in Rocket.toml. More info about that here.

How to run

FileDrop is written in rust, you will be able to run it like a normal rust app.

if you need help :

Docker

see the docker hub repo

docker run -p 80:8000 --name filedrop -it -d noecl/filedrop