• Stars
    star
    1,396
  • Rank 32,921 (Top 0.7 %)
  • Language
    JavaScript
  • License
    BSD 2-Clause "Sim...
  • Created about 7 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple open source self-hosted file sharing solution.

PsiTransfer

Current Release Dependencies Known Vulnerabilities Github Stars Docker Stars Image Size Docker Pulls Docker Automated buil Donate

Simple open source self-hosted file sharing solution. It's an alternative to paid services like Dropbox, WeTransfer.

  • No accounts, no logins
  • Mobile friendly responsive interface
  • Supports many and very big files (Streams ftw)
  • Resumable up- and downloads (tus.io)
  • Set an expire-time for your upload bucket
  • One-time downloads
  • Download all files as zip/tar.gz archive
  • Modal-style file preview
  • Requires Node >=7.4 or use --harmony-async-await flag
  • Password protected download list (AES)
  • /admin Page lists bucket information, Screenshot (disabled until you set adminPass config value)
  • Lightweight Vue based frontend apps. Gzipped (on by default) less than 100k
  • Explicit named bucket IDs with query param sid=<myBucketID>

See the blog posts about PsiTransfer: https://psi.cx/tags/PsiTransfer/ and checkout the Documentation

Screenshot

Quickstart

Docker

$ docker run -p 0.0.0.0:3000:3000 -e PSITRANSFER_ADMIN_PASS=secret -v $PWD/data:/data psitrax/psitransfer
# data volume needs UID 1000
$ sudo chown -R 1000 $PWD/data

Specify the version by using image tags e.g.:

  • latest: corresponds to master branch
  • 2: latest stable 2.x.x
  • 1.1: latest stable 1.1.x
  • 1.0.0: exact version

Manual, precompiled

# Be sure to have NodeJS >= 12
$ node -v
v12.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

Manual, from source

# Compile the frontend apps
$ cd app
$ npm install
$ npm run build

# Install dependencies
$ cd ..
$ npm install
$ npm start

Configuration

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 where production is the value from NODE_ENV See config.dev.js
  • Define environment Variables like PSITRANSFER_UPLOAD_DIR to set the upload directory
  • To secure your PsiTransfer if exposed to the internet from unwanted, non authorized uploads use the PSITRANSFER_UPLOAD_PASS environment variable

Customization

public/pug/upload.pug and download.pug are kept simple. You can alter these files and add your logo and styles. Please keep a footnote like Powered by PsiTransfer :)

Debug

Psitransfer uses debug:

DEBUG=psitransfer:* npm start

Side notes

  • There is no (end-to-end) payload encryption (yet).
  • Download all as ZIP does not support resuming the download.

🌟 Contribution is highly welcome 🀘

Want to say thanks and buy me a beer? Donate

License

BSD

More Repositories

1

docker-powerdns

PowerDNS Docker Image based on Alpine
Shell
107
star
2

AskSinAnalyzerXS

Analyzer for radio telegrams in a HomeMatic environment
Vue
45
star
3

s7client

Hi level API for node-snap7 to communication with Siemens S7 PLCs
JavaScript
42
star
4

docker-php-nginx

Lightwight Docker image for the (latest) PHP-FPM and Nginx based on AlpineLinux
Nginx
21
star
5

docker-etcd-registrator

Docker service registrator for etcd and skydns
JavaScript
15
star
6

news4ward

Contao Extensions: News/Blog based on contentelements
PHP
13
star
7

express-websocket

Access express routes through websocket requests
JavaScript
7
star
8

testcafe-hub

TestCafe Hub for running tests against permanent remote nodes
JavaScript
6
star
9

boxes4ward

Contao-Extension: manage articles in content boxes
PHP
6
star
10

contao-livereload

Contao CSS Livereload Client
PHP
5
star
11

TinyMCE_Customizer

Contao-Extension: Generate custom TinyMCE configurations for users/groups/layouts/pages
PHP
5
star
12

anguloop-example

JavaScript
5
star
13

AskSinAnalyzer-Sniffer

Sniffer for homematic telegrams
C++
5
star
14

docker-contao

Docker Container for Contao CMS
Shell
5
star
15

redirect4ward

Contao-Extension: redirect not existing urls
PHP
5
star
16

stylepicker4ward

Contao Extensions: Let redakteuers easily select a css-class from a predefined list.
PHP
5
star
17

docker-icingaweb2

Icingaweb2 Docker Container with Director
Shell
4
star
18

domaincheck

Contao-Extension: check if a domain is free for registration
PHP
4
star
19

ld382.js

Lib to communicate with ld382 wifi LED controller
JavaScript
4
star
20

HMSensor-FlashStation

Helper PCB to flash Asksin++ HMSensor PCBs
4
star
21

Formular

Contao Lib: Render DCA to forms
PHP
4
star
22

DCAHelper

Contao Library: Helper methods for DCA callbacks
PHP
4
star
23

gulpsi

Gulp based build system with package support and dependency aggregation
JavaScript
4
star
24

docker-webhooks

Predefined `docker exec` using HTTP-POST for Gitlab/Github Webhooks
JavaScript
4
star
25

quickjump4ward

Contao Extensions: Quckly navigate to articles,modules,etc with an autocompleting textfield in the backend
PHP
4
star
26

glossary

Glossary extension
PHP
3
star
27

table4ward

Contao Extension: Richtext-Table Editor
JavaScript
3
star
28

check_btrfs_usage

btrfs filesystem usage monitoring plugin
Shell
3
star
29

docker-icinga2

Icinga2 Docker Container
Perl
3
star
30

Lightbox4ward

Lightbox extension for Contao
PHP
3
star
31

testcafe-browser-provider-hub

This plugin integrates TestCafe with the TestCafe-Hub
JavaScript
3
star
32

autocompleterTextfield

Contao Widget: Ajax-autocompleting Textfield
PHP
3
star
33

HM-LC-Dim1PWM-LinearPWM

HomeMatic PWM Aktor
C++
3
star
34

psilog-collector

Stream-based log collecting/aggregation tool written in NodeJS. Its similar to logstash but uses a lot less memory and has some neat transformers.
JavaScript
3
star
35

isotope_testmail

PHP
2
star
36

news4ward_tags

Contao-Extension: tagcloud for news4ward
PHP
2
star
37

settings

Contao-Extension: Alternative settings display and registry plugin
PHP
2
star
38

listViewSortable

Contao-Extension: drag and drop sorting for DCA-ListView mode
PHP
2
star
39

GlobalContentelements

Contao Extensions: Use the native contentelements in your extension
PHP
2
star
40

jitsi-meet_ansible-role

WorkInProgress! Jitsi-Meet Ansible Role for scaled setups
Python
2
star
41

loopback-packageloader

Load loopback models and configs from different directories
JavaScript
2
star
42

mooquee4ward

Contao-Extension: slider/fader for images or content-elements
PHP
2
star
43

keepalived-hcloud

Keepalived container with Hetzner-Cloud scripts
Shell
2
star
44

formcheck

Contao Extension: Javascript form validation
JavaScript
2
star
45

servitus

Contao-Extension: Database / CSV-Import automator
PHP
2
star
46

express-virtual-request

Mock `request` and `response` objects to run virtual requests against express.js
JavaScript
2
star
47

juiceSlider

Contao-Extension: Horizontal fan slider
PHP
2
star
48

QuickTunnel

Little platform independet GUI for establishing SSH tunnel
CSS
2
star
49

ce_groups

Contao Exteion: backend grouping for content elements
PHP
2
star
50

imageZoom4ward

Contao-Extension: zoomable picture
JavaScript
1
star
51

check_docker

Docker Monitoring Plugins
Shell
1
star
52

news4ward_comments

Contao-Extension: comments integration for news4ward
PHP
1
star
53

news4ward_archiveMenu

Contao-Extension: archive menu for news4ward
PHP
1
star
54

PassSafe

Browser based password safe
HTML
1
star
55

jSlideGallery

Contao Extension: Rhinoslider with a neat content element
JavaScript
1
star
56

news4ward_titleSearch

News4ward extensions to search the title field at the listing view
PHP
1
star
57

hetzner-dyndns

Simple DynDNS Update for Hetzner DNS API
TypeScript
1
star
58

news4ward_related

Contao-Extension: related items for news4ward
PHP
1
star
59

news4ward_categories

Contao-Extension: categories for news4ward
PHP
1
star
60

docker-owncloud

Docker image for Owncloud based in AlpineLinux
Nginx
1
star
61

BgSlider

Contao-Extension: Fullscreen background slider with fade effect
PHP
1
star
62

filepicker4ward

Contao Widget: Javascript-Filerpicker Widget
PHP
1
star
63

fe_pageSplit4ward

Contao-Extension: split fe_page into head/content/foot sections
PHP
1
star
64

dotfiles

Bash and vim konfiguration
Vim Script
1
star
65

jvb_exporter

Jitsi Videobridge Prometheus exporter
JavaScript
1
star
66

UploadWidget

Contao-Extension: UploadWidget
JavaScript
1
star
67

tagsWidget

Contao-Widget: Tags with autocompleter function
JavaScript
1
star
68

contao_tinymce_cleaner

PHP
1
star
69

inserttags_js_support

PHP
1
star
70

news4ward_authorMenu

Contao-Extension: Authors filter for news4ward
PHP
1
star
71

news4ward_mostread

Read hit counter for News4ward articles
PHP
1
star
72

MeioMask

Contao-Extension: xtends text-fields with rgxp=date|time|datim with a input-mask to improve the usability
JavaScript
1
star