Simple open source self-hosted file sharing solution.
- Supports many and very big files (Streams ftw)
- Resumable up- and downloads (TUS)
- Set an expire-time for your upload bucket
- One-time downloads
- Password protected downloads (AES)
- Requires Node >=7.4
Demo: https://transfer.psi.cx
$ docker run -p 0.0.0.0:3000:3000 -v $PWD/data:/data psitrax/psitransfer
# data volume needs UID 1000
$ sudo chown -R 1000 $PWD/data
# Be sure
6EDE
to have NodeJS >= 7.4
$ node -v
v7.4.0
# Download and extract latest release package from
# https://github.com/psi-4ward/psitransfer/releases
# Install dependencies and start the app
$ NODE_ENV=production npm install
$ npm start
There are some configs in config.js
like port and data-dir.
You can:
- Edit the
config.js
(not recommend) - Add a
config.production.js
whereproduction
is the value fromNODE_ENV
Seeconfig.dev.js
- Define environment Variables like
PSITRANSFER_UPLOAD_DIR
public/upload.html
and download.html
are kept simple.
You can alter these files and add your logo and styles.
The following elements are mandatory:
common.js
and respectively upload.js
, download.js
as well as <div id="upload">
, <div id="download">
Please keep a footnote like Powered by PsiTransfer :)
Psitransfer uses debug:
DEBUG=psitransfer:* npm start