Repolode
depado

depado/goploader

Self-hosted file sharing server and Go CLI client that encrypts uploads on the server and works with curl, httpie and wget.

Open-source alternative to:WeTransfer

Stars
304
Forks
47
Open issues
23
Last commit
4 hours ago

What is it?

Goploader is a file sharing tool made of a server and a client, both written in Go. It is aimed at sharing files quickly from a terminal, as well as from a browser for people who do not use one.

The server is meant to be run by you, and the project includes a Docker image and a setup web interface. The client, named gpldr, uploads files from the command line. Uploads are encrypted on the server side, and the project's stated focus is on privacy.

Because the server accepts standard HTTP uploads, plain curl, httpie and wget can also be used to send files without installing the client.

Key features

  • 01Server-side encryption of uploaded files
  • 02Command-line client named gpldr
  • 03Works with curl, httpie and wget uploads
  • 04Docker image and web-based setup interface
  • 05Server and client are both written in Go

Use cases

  • Sending a file to a colleague from a terminal session on a server
  • Running a private file-sharing service for a team or home network
  • Uploading files from scripts using curl or wget

Quick start

  1. 1

    Clone the repository

    git clone https://github.com/depado/goploader.git
  2. 2

    Enter the project directory

    cd goploader
  3. 3

    Build the server

    go build -trimpath -ldflags '-s -w' -o goploader-server ./server/
  4. 4

    Start the server

    ./goploader-server

Things to know

  • The README warns that most of the technology used is outdated, so use at your own risk.
  • Installation requires building from source with Go or using Docker; no packaged install is documented.

In collections

Topics

FAQ

What is goploader?
Self-hosted file sharing server and Go CLI client that encrypts uploads on the server and works with curl, httpie and wget. Goploader is a file sharing tool made of a server and a client, both written in Go. It is aimed at sharing files quickly from a terminal, as well as from a browser for people who do not use one.
Is goploader free to use? What license does it have?
goploader is open source under the MIT license. Check the license terms before using it in commercial products.
Is goploader still maintained?
Actively maintained. The last commit to goploader was on Nov 6, 2026.
What can I use goploader for?
Sending a file to a colleague from a terminal session on a server Running a private file-sharing service for a team or home network Uploading files from scripts using curl or wget
How do I install goploader?
Clone the repository: git clone https://github.com/depado/goploader.git Enter the project directory: cd goploader Build the server: go build -trimpath -ldflags '-s -w' -o goploader-server ./server/ Start the server: ./goploader-server
Where can I get goploader?
The source code and installation instructions are on GitHub: https://github.com/depado/goploader

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects