/dropspace

DropSpace is an easy way to self-host a file drop.

Primary LanguageJavaScript

DropSpace

Files uploaded
(^ that's how many files were ever uploaded to DropSpaces)

Simple file sharing made in Laravel

About DropSpace

DropSpace is an easy way to self-host a file drop. Simply upload your file, and share the link. That's all!
DropSpace is built using Laravel.

Features

Feature Status
File upload (chunked using Resumable.js
Server side settings. (Max file size, default expiry, ...)
Protected uploads (With multiple users)
Rich embeds. (Video player or image display)
File checksum verification
File sharing in email
File protection
Set expiry based on download limit
Set expiry based on date
Auto delete based on date expiry
Auto delete based on download count
File download via curl (click-to-copy command)
File storage in S3 storage
File upload via CLI
Auto update
Automatic file compression on uploaded files

Deployment

Clone the repository

git clone https://github.com/leventdev/dropspace.git

Go into the cloned repository

cd dropspace

Install php8.1

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update

Install composer

sudo apt install composer

Install dependencies

sudo apt install php8.1-xml php8.1-gd php8.1-curl php8.1-mysql

Install up-to-date NPM

sudo apt install nodejs
curl -L https://npmjs.org/install.sh | sudo sh

Install composer dependancies

composer install

Install npm dependancies

npm install

Make an environment configuration based on the example and set it up

cp .env.example .env
nano .env

Set the app key

php artisan key:generate

Set up the tables

php artisan migrate

Set up permissions for the app

sudo chown -R www-data:www-data /root/to/dropspace

Set up the web server of your choice

And finish off by building the app

npm run prod

Add command to crontab
Replace /var/www/dropspace to DropSpace's location

*/5 * * * * cd /var/www/dropspace && php artisan schedule:run

Security Vulnerabilities

If you discover a security vulnerability within DropSpace, please make a pull request and use the security vulnerability tag.

License

The DropSpace is open-sourced software licensed under the MIT license.