You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
dependabot[bot] 8f3644f9ba Bump minimist from 1.2.5 to 1.2.6 in /web 2 months ago
.github/workflows ci: Fix Docker tagging 6 months ago
deployments Add deployments quickstart 1 year ago
web Bump minimist from 1.2.5 to 1.2.6 in /web 1 month ago
.dockerignore Fix Dockerfile, clean up *ignore 1 year ago
.gitignore Fix Dockerfile, clean up *ignore 1 year ago
Dockerfile chore: Bump Go version to 1.17 6 months ago
LICENSE Create LICENSE 6 months ago
Makefile Fix Dockerfile, clean up *ignore 1 year ago
README.md Improve description 1 year ago
assets.go Initial create dialogue, switch to tailwindcss 1 year ago
credential.go Form handler, saver and style timprovements 1 year ago
go.mod Handle create, fix upload UI 1 year ago
go.sum Handle create, fix upload UI 1 year ago
handlers-s3.go feat: Upgrade versions, introduce Uppy batch signing 3 months ago
handlers.go Prevent overwriting files 11 months ago
helpers.go Prevent overwriting files 11 months ago
logger.go Split out templates, add readiness endpoints 1 year ago
main.go feat: Upgrade versions, introduce Uppy batch signing 3 months ago
readyz.go Split out templates, add readiness endpoints 1 year ago
s3.go Remove default timeout, bump Alpine version 7 months ago
store.go Form handler, saver and style timprovements 1 year ago

README.md

upl

A dropbox backed by any S3 bucket.

upl allows you to create dropboxes by providing the credentials for any S3-compatible bucket. A link will be generated that can be visited in a web browser to upload files. Links expire after a configurable amount of time.

  • Simple web interface
  • Works with large files by using S3 multipart uploads, powered by Uppy
  • Remembers previously created dropboxes and uploaded files
  • Single fat binary

Screenshot 1Screenshot 2

Building

You'll need:

  • Node.js
  • Go
  • make
make TAGS=production

Alternatively, docker build . this project.

Deploying

To deploy as a single binary, build it from source and run:

export REDIS_CONNECTION=simple:redis-hostname:6379
export LISTEN=:8080
./upl

For example Kubernetes manifests or Docker Compose files, see the deployments folder.