file-sharing

seafile

23 May 2020Last Commit7739 (984/yr)Github Stars247Issues

Seafile is an open source cloud storage system with privacy protection and teamwork features. Collections of files are called libraries. Each library can be synced separately. A library can also be encrypted with a user chosen password. Seafile also allows users to create groups and easily sharing files into groups.

Seafile has the following features:

Each component of Seafile has its own source code repository on Github.

Before version 6.0, the source code of "sync client daemon" and "server core" are mixed together in https://github.com/haiwen/seafile. But after 6.0 version, the server core is separated into its own repository. For this reason, the sync client daemon repository is still the "front page" for Seafile project on Github.

core

23 May 2020Last Commit7072 (913/yr)Github Stars1480Issues

ownCloud gives you freedom and control over your own data. A personal cloud which runs on your own server.

https://doc.owncloud.org/server/10.4/admin_manual/installation/

https://owncloud.org/contribute/

Learn about the different ways you can get support for ownCloud: https://owncloud.org/support/

Please submit translations via Transifex: https://www.transifex.com/projects/p/owncloud/

For detailed information about translations: https://doc.owncloud.org/server/10.4/developer_manual/core/translation.html

onionshare

12 May 2020Last Commit3897 (649/yr)Github Stars109Issues

OnionShare is an open source tool for securely and anonymously sending and receiving files using Tor onion services. It works by starting a web server directly on your computer and making it accessible as an unguessable Tor web address that others can load in Tor Browser to download files from you, or upload files to you. It doesn't require setting up a separate server, using a third party file-sharing service, or even logging into an account.

Unlike services like email, Google Drive, DropBox, WeTransfer, or nearly any other way people typically send files to each other, when you use OnionShare you don't give any companies access to the files that you're sharing. So long as you share the unguessable web address in a secure way (like pasting it in an encrypted messaging app), no one but you and the person you're sharing with can access the files.

filestash

23 May 2020Last Commit2974 (1010/yr)Github Stars21Issues


A Dropbox-like file manager that let you manage your data anywhere it is located:
FTP • FTPS • SFTP • WebDAV • Git • S3LDAP • Mysql
CardDAV • CalDAV • Backblaze B2 • Minio
Dropbox • Google Drive

Filestash aims to solve the Dropbox problem by abstracting the storage aspect. This makes it possible to bring your own backend or create your own by implementing a simple interface. The power of that model makes it possible for non nerds to easily interact with complex systems without prior training (assuming they are familiar with Dropbox). As an example of that superpower, see our LDAP backend and the Mysql one that emulate a file system where first level folder are the databases, tables are represented as subfolders and each row is represented as a file:

youtransfer

08 May 2020Last Commit1397 (292/yr)Github Stars84Issues

YouTransfer is looking for contributors who are willing to update out-dated packages, merge pull requests, resolve issues and continue to improve the overal product. If you are interested, please contact me (info at youtransfer dot io).

YouTransfer is a simple but elegant self-hosted file transfer & sharing solution. It is an alternative to paid services like Dropbox and WeTransfer by offering similar features but without limitations, price plans and a lengthy privacy policy. You remain in control of your files.

linx-server

14 May 2020Last Commit793 (170/yr)Github Stars25Issues

Self-hosted file/media sharing website.

You can see what it looks like using the demo: https://demo.linx-server.net/

Example running

Example with docker-compose

Ideally, you would use a reverse proxy such as nginx or caddy to handle TLS certificates.

All configuration options are accepted either as arguments or can be placed in a file as such (see example file linx-server.conf.example in repo):

...and then run linx-server -config path/to/linx-server.conf

When files expire, access is disabled immediately, but the files and metadata will persist on disk until someone attempts to access them. You can set the following option to run cleanup every few minutes. This can also be done using a separate utility found the linx-cleanup directory.

psitransfer

23 May 2020Last Commit572 (185/yr)Github Stars24Issues

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

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

Demo: https://transfer.psi.cx

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

There are some configs in config.js like port and data-dir.
You can:

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 :)

projectsend

30 Apr 2020Last Commit547 (88/yr)Github Stars331Issues

ProjectSend is a free, clients-oriented, private file sharing web application.

Clients are created and assigned a username and a password.
Uploaded files can be assigned to specific clients or clients groups.

Other featres include auto-expiration of upload, notifications, full logging of actions by users and clients, option to allow clients to also upload files, themes, multiple languages...

Main website: projectsend.org
git: current repository Old repository (unused): Google Code

Feel free to participate!

plik

11 Apr 2020Last Commit507 (100/yr)Github Stars19Issues

Plik is a scalable & friendly temporary file upload system ( wetransfer like ) in golang.

1.3-RC1

To run plik, it's very simple :

Et voilà ! You now have a fully functional instance of Plik running on http://127.0.0.1:8080.
You can edit server/plikd.cfg to adapt the configuration to your needs (ports, ssl, ttl, backend params,...)

Configure root.gg repository and install server and/or client

Edit server configuration at /etc/plikd.cfg and start the server

To compile plik from sources, you'll need golang and npm installed on your system.

docs

23 May 2020Last Commit470 (69/yr)Github Stars43Issues

Teedy is an open source, lightweight document management system for individuals and businesses.

A demo is available at demo.teedy.io

A preconfigured Docker image is available, including OCR and media conversion tools, listening on port 8080. The database is an embedded H2 database but PostgreSQL is also supported for more performance.

The default admin password is "admin". Don't forget to change it before going to production.

The data directory is /data. Don't forget to mount a volume on it.

To build external URL, the server is expecting a DOCS_BASE_URL environment variable (for example https://teedy.mycompany.com)

pomf

20 May 2020Last Commit422 (107/yr)Github Stars17Issues

Pomf is a simple file uploading and sharing platform.

See the real world example at safe.moe.

Original development environment is Nginx + PHP5.5 + MySQL, but is confirmed to work with Apache 2.4 and newer PHP versions. Should work with any other PDO-compatible database.

For the purposes of this guide, we won't cover setting up Nginx, PHP, MySQL, Node, or NPM. So we'll just assume you already have them all running well.

First you must get a copy of the pomf code. To do so, clone this git repo. You will need to recursively clone the repo to get the required PHP submodule, and the optional user panel submodule.

fileshelter

17 May 2020Last Commit105 (27/yr)Github Stars5Issues

FileShelter is a self-hosted software that allows you to easily share files over the Internet. Just upload a file and get an URL back!

The aim is to provide a very simple web application, with few package dependencies, so that anyone can install it on his own server.

A demo instance is available, with the following limitations:

A docker image is available, thanks to Paul Galow.

Once the expiry date or the download limit is reached, the download is no longer available and the file is deleted.

Buster packages are provided for amd64 and armhf architectures.

sharry

23 May 2020Last Commit76 (25/yr)Github Stars4Issues

Sharry allows to share files with others in a simple way. It is a self-hosted web application. The basic concept is: upload files and get a url back that can then be shared.

Authenticated users can upload their files on a web site together with an optional password and a time period. The time period defines how long the file is available for download. Then a public URL is generated that can be shared, e.g. via email.

The download page is hard to guess, but open to everyone.

Anonymous can send files to registered ones. Each registered user can maintain alias pages. An alias page is behind a “hard-to-guess” URL (just like the download page) and allows everyone to upload files to the corresponding user. The form does not allow to specify a password or validation period, but a description can be given. The user belonging to the alias can be notified via email.

filite

11 Mar 2020Last Commit70 (115/yr)Github Stars5Issues

A simple, light and standalone pastebin, URL shortener and file-sharing service that hosts files, redirects links and stores texts.

Live Example (file upload disabled and rate limited)

That's it!

When asked for a login, use whatever username you want and the password you provided during setup. Details for programmatic usage are provided in the dedicated section.

You can remove the prompt and always enable or disable syntax highlighting by replacing $prompt:Highlight|false$ with true or false.

Upload limits are set to 10M as an example

filesharing

30 Apr 2020Last Commit21 (7/yr)Github Stars3Issues

Powered by Laravel

This PHP application based on Laravel 5.4 allows to share files like Wetransfer. You may install it on your own server. It does not require any database system, it works with JSON files into the storage folder. It is multilingual and comes with english and french translations for now. You're welcome to help translating the app.

It comes with a droplet. You may drag and drop some files or directories into the droplet, your files will be uploaded to the server as a bundle.

A bundle is like a package containing is a various number of files. The bundle has a 2 weeks expiry date after the creation of the bundle. This value is not editable yet, this is a todo.