File Sharing and Synchronization / Free Software and web applications

This is a list of Free Software network services and web applications which can be hosted locally. Selfhosting is the process of locally hosting and managing applications instead of renting from SaaS providers. ---from github/Kickball/awesome-selfhosted


Distributed filesystems

  • Camlistore - A set of open source formats, protocols, and software for modeling, storing, searching, sharing and synchronizing data.
  • Ceph - Distributed object store and file system.
  • DRBD - Distributed Replicated Block Device.
  • LeoFS - Unstructured object/data storage and a highly available, distributed, eventually consistent storage system.
  • GlusterFS - Scale-out network-attached storage file system.
  • Go IPFS - Implementation of IPFS, a global, versioned, peer-to-peer filesystem that seeks to connect all computing devices with the same system of files.
  • HDFS - Distributed, scalable, and portable file-system written in Java for the Hadoop framework.
  • Lustre - Parallel distributed file system, generally used for large-scale cluster computing.
  • MooseFS - Fault tolerant, network distributed file system.
  • MogileFS - Application level, network distributed file system.
  • OpenAFS - Distributed network file system with read-only replicas and multi-OS support.
  • Ori Filesystem - A Secure Distributed File System built for offline operation.
  • Swift - A highly available, distributed, eventually consistent object/blob store.
  • SheepDog - A distributed Blockdevice, Rest, QEMU and distributed Filesystem storage.
  • TahoeLAFS - secure, decentralized, fault-tolerant, peer-to-peer distributed data store and distributed file system.
  • XtreemFS - XtreemFS is a fault-tolerant distributed file system for all storage needs.

File transfer/synchronization

  • Git Annex - File synchronization between computers, servers, external drives. (Source CodeGPL-3.0 Haskell
  • Gossa - Gossa is a light and simple webserver for your files. MIT Go
  • Kinto - Kinto is a minimalist JSON storage service with synchronisation and sharing abilities. (Source CodeApache-2.0Python
  • Nextcloud - Access and share your files, calendars, contacts, mail and more from any device, on your terms. (DemoSource CodeAGPL-3.0 PHP
  • OpenSSH/SFTP - Secure File Transfer Program. (Source CodeBSD-2-Clause C
  • ownCloud - All-in-one solution for saving, synchronizing, viewing, editing and sharing files, calendars, address books and more. (Source CodeClientsAGPL-3.0 PHP
  • Pydio - Turn any web server into a powerful file management system and an alternative to mainstream cloud storage providers. (Source CodeAGPL-3.0 PHP
  • Samba - Samba is the standard Windows interoperability suite of programs for Linux and Unix. It provides secure, stable and fast file and print services for all clients using the SMB/CIFS protocol. (Source CodeGPL-3.0 C
  • Seafile - File hosting and sharing solution primary for teams and organizations. (DemoSource CodeGPL-2.0 C
  • SparkleShare - Self hosted, instant, secure file sync. (Source CodeGPL-3.0 C#
  • Syncany - Secure file sync software for arbitrary storage backends, an open-source cloud storage and filesharing application. Securely synchronize your files to any kind of storage. GPL-3.0 Java
  • Syncthing - Syncthing is an open source peer-to-peer file synchronisation tool. (Source CodeMPL-2.0 Go
  • Unison - Unison is a file-synchronization tool for OSX, Unix, and Windows. GPL-3.0 OCaml
  • Z-Push - Implementation of Microsoft’s ActiveSync protocol. (Source CodeAGPL-3.0 PHP

Peer-to-peer filesharing

  • bittorrent-tracker - Simple, robust, BitTorrent tracker (client and server) implementation. (Source CodeMIT Nodejs
  • cloud-torrent - Torrent Web Client with HTTP retrievable or streamable downloaded files. AGPL-3.0 Go
  • Dat Project - Powerful decentralized file sharing applications built from a large ecosystem of modules. (Source CodeMIT Nodejs
  • FilePizza - Peer-to-peer file transfers in your browser. (Source CodeBSD-3-Clause Nodejs
  • Firefox Send - A file sharing experiment which allows you to send encrypted files to other users. MPL-2.0 Nodejs
  • instant.io - Streaming file transfer over WebTorrent. (DemoMIT Nodejs
  • Magnetico - Magnetico is the first autonomous (self-hosted) BitTorrent DHT search engine suite that is designed for end-users. AGPL-3.0 Python
  • Magnetissimo - Search engine that indexes all popular torrent sites. MIT Elixir
  • Opentracker - Open and free bittorrent tracker. It aims for minimal resource usage and is intended to run at your wlan router. (Source CodeBeerware C
  • peerflix-server - Downloads torrent files and provides a direct link download or a direct link stream. MIT Nodejs
  • qBittorrent - Free cross-platform bittorrent client with a feature rich Web UI for remote access. (Source CodeGPL-2.0C++
  • rartracker - Complete private bittorrent tracker. WTFPL PHP
  • Reep - In-browser peer-to-peer file transfer and streaming made easy. (Source CodeGPL-2.0 Nodejs
  • Transmission - Fast, easy, Free Bittorrent client. (Source CodeGPL-3.0 C

Object storage/file servers

  • Minio - Minio is an open source object storage server compatible with Amazon S3 APIs. (Source CodeApache-2.0 Go
  • Zenko CloudServer - Zenko CloudServer, an open-source Node.js implementation of a server handling the Amazon S3 protocol. (Source CodeApache-2.0 Nodejs

Single-click/drag-n-drop upload

  • BoZoN - Minimalist Drag and drop file sharing app. AGPL-3.0 PHP
  • Coquelicot - Coquelicot is a “one-click” file sharing web application with a focus on protecting users’ privacy. (Source CodeAGPL-3.0 Ruby
  • droppy - droppy is a self-hosted cloud server with an interface similar to desktop file managers and has capabilities to edit files on-the-fly as well as view and playback media directly in the browser. (DemoBSD-2-Clause Nodejs
  • FileShelter - FileShelter is a self-hosted software that allows you to easily share files over the Internet. (DemoGPL-3.0C++
  • Files Sharing - Open Source and self-hosted files sharing application based on unique and temporary links. GPL-3.0PHP
  • img.bi - img.bi is a secure image hosting. Images are encrypted using AES-256 with random key in browser before upload. GPL-3.0 Nodejs
  • ipfs.pics - ipfs.pics is a distributed image hosting website. AGPL-3.0 PHP
  • Jirafeau - Jirafeau is a web site permitting to upload a file in a simple way and give an unique link to it. (DemoAGPL-3.0 PHP
  • linx - File sharing application and pastebin with API, auto-expiry, deletion keys, and web seed support. (DemoGPL-3.0Go
  • lufi - Let's Upload that FIle, client-side encrypted. (DemoSource CodeAGPL-3.0 Perl
  • lutim - Let's Upload That Image. AGPL-3.0 Perl
  • Nimbus - Drag-and-drop shortlink file sharer for OS X. MIT Python
  • OnionShare - Securely and anonymously share a file of any size. GPL-2.0 Python
  • PictShare - PictShare is a multi lingual, open source image hosting service with a simple resizing and upload API. (DemoSource CodeApache-2.0 PHP
  • Plik - Plik is a scalable and friendly temporary file upload system. (DemoMIT Go
  • Pomf - Simple file uploading and sharing, source for the now shut down site Pomf.se. MIT PHP
  • ProjectSend - Upload files and assign them to specific clients you create. Give access to those files to your clients. (Source CodeGPL-2.0 PHP
  • PsiTransfer - Simple open source self-hosted file sharing solution with robust up-/download-resume and password protection. BSD-2-Clause Nodejs
  • Sharry - Share files easily over the internet between authenticated and anonymous users (both ways) with resumable up- and downloads. (DemoGPL-3.0 Scala/Java
  • Uguu - Stores files and deletes after X amount of time. (Source CodeMIT PHP
  • Up1 - Client-side Encrypted Image Host. MIT Nodejs
  • uPste - Private file hosting application with an emphasis on serving technology communities. (Source CodeAGPL-3.0PHP
  • XBackBone - A simple, fast, lightweight and powerful ShareX (a free and open-source screenshot utility for Windows) PHP backend. AGPL-3.0 PHP
  • YouTransfer - YouTransfer is a simple but elegant self-hosted file transfer and sharing solution. (DemoSource CodeApache-2.0 Nodejs
Command-line file upload
  • Beauties - Minimalist file sharing written in Go, to be used primarily from Unix shell (e.g. with curl). Can be built as a Debian package for easy install. MIT Go
  • transfer.sh - Easy file sharing from the command line. (Source CodeMIT Go

Web based file managers

  • Apaxy - Theme built to enhance the experience of browsing web directories, using the mod_autoindex Apache module and some CSS to override the default style of a directory listing. (Source CodeUnlicense HTML
  • DirectoryLister - Simple PHP based directory lister that lists a directory and all it's sub-directories and allows you to navigate there within. (Source CodeMIT PHP
  • Encode Explorer - Encode Explorer is a single page file browser, it is simple and functional. (DemoSource CodeMITPHP
  • explorer - Highly-configurable directory listing made with nodejs. (Source CodeMIT Nodejs
  • filebrowser - Web File Manager which can be used as a middleware or standalone app. (Source CodeApache-2.0Go/VueJS
  • goBrowser - Simple http file browser. (Source CodeGPL-3.0 Go
  • h5ai - Modern file indexer for HTTP web servers with focus on your files. Directories are displayed in a appealing way and browsing them is enhanced by different views, a breadcrumb and a tree overview. (DemoSource CodeMIT PHP
  • IFM - Single script file manager. MIT PHP
  • ResourceSpace - ResourceSpace open source digital asset management software is the simple, fast, and free way to organise your digital assets. (DemoSource CodeOther PHP
  • s3server - Simple HTTP interface to index and browse files in a public S3 or Google Cloud Storage bucket. (DemoMITGo
  • Sprut.io - 2 panel file manager with drag and drop features, code editor, text search, hotkeys. (DemoSource CodeGPL-3.0 Python
  • Surfer - Simple static file server with webui to manage files. MIT Nodejs
  • TagSpaces - TagSpaces is an offline, cross-platform file manager and organiser that also can function as a note taking app. The WebDAV version of the application can be installed on top of a WebDAV servers such as Nextcloud or ownCloud. (DemoSource CodeAGPL-3.0 Javascript