OpenSource-Hub
T

transfer.sh

15.8k stars·File Management·SHA-256 checksum verified

Easy and fast file sharing from the command-line with curl. Supports S3, Google Drive, Storj, and local storage. Encrypt, limit downloads, auto-delete. Self-hostable.

Smart Download

Download Download Version

v1.6.1 · 27 MB

Instant file sharing from your terminal, self-hosted.

Core Features

  • Upload/download/delete files with a single curl command
  • Multiple backends: S3, Google Drive, Storj, local filesystem
  • Set max downloads and expiration days, auto-delete
  • Server-side AES256 encryption (self-hosted only)
  • VirusTotal integration for malware scanning

What It Can't Do

  • Do not trust server-side encryption on public instances; the password is stored on the server – only use it on your own instance,No built-in user authentication; consider adding HTTP basic auth or a reverse proxy,File size limits depend on your backend storage (e.g., S3 quota),The public transfer.sh instance is separate from this repository; for support, host your own

Use Cases

  • Quickly share logs or debug files among team members
  • Server-to-server file transfer for backups or configs
  • Temporary sharing of sensitive files with auto-expiry
  • Self-hosted file sharing without relying on third-party services

Detailed Introduction

transfer.sh is an open-source command-line tool for sharing files quickly and securely. It provides a simple HTTP API that allows you to upload, download, encrypt, and delete files using curl. The tool supports multiple storage backends including Amazon S3, Google Drive, Storj, and local file system. It offers features like password-protected encryption, download limits, time-based auto-deletion, and VirusTotal integration. You can self-host your own instance for full control over your data. Ideal for developers, sysadmins, and anyone who needs to share files via the terminal without relying on third-party services. The project is written in Go, lightweight, and easy to deploy with Docker.

Tags

file-sharingcommand-linecli-toolself-hostedencryptions3gdrive

Getting Started

1

Download installer

Click the button above to download the installer for your system

2

Install the software

Double-click the downloaded installer and follow the prompts

3

Step 1: Install Docker or download the binary

4

Step 2: Run container: docker run -p 8080:8080 dutchcoders/transfer.sh

5

Step 3: Upload with curl: curl --upload-file ./myfile.txt http://your-ip:8080/myfile.txt

Install Guide
  1. Step 1: Install Docker or download the binary
  2. Step 2: Run container: docker run -p 8080:8080 dutchcoders/transfer.sh
  3. Step 3: Upload with curl: curl --upload-file ./myfile.txt http://your-ip:8080/myfile.txt
File Integrity

Checksum not available

This project has not published a SHA-256 checksum on its GitHub Release page

SHA256 Checksum

No checksum available

Download directly from GitHub Releases and verify file integrity yourself

All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.

Open Source Transparency

View GitHub Source
Environment Guide

Uninstall Info

If using Docker, remove the container with docker rm. If using binary, delete the executable file.

No Extra Dependencies

Ready to use after download. No additional runtime required.

Project Info
LicenseMIT
Last Updated2026-05-13 13:09:49
GitHub RepositoryOfficial Website

Similar Projects