Skip to main content

What is Stashy?

Stashy is a self-hosted file storage service that exposes a single endpoint serving REST, gRPC, Connect, and gRPC-Web simultaneously. Upload files, get a public URL — that’s it.

Key Features

Multi-Protocol

One port serves REST, gRPC, Connect, and gRPC-Web via Vanguard transcoding.

Pluggable Storage

Memory, local disk, or Google Cloud Storage — swap backends with a single env var.

Flexible Database

SQLite out of the box. Postgres and MySQL when you need them. Auto-detected from DSN.

Single Binary

One Go binary, zero external dependencies with SQLite + memory storage. Docker image included.

How It Works

1

Sign in and get an API key

Visit the dashboard (/), sign in with Google, and generate an API key.
2

Upload a file

POST /api/v1/files with your Bearer token. You get back a unique file ID.
3

Share the public URL

Anyone can access the file at /{id} — no auth required. Map a CDN or subdomain like cdn.example.com/{id} for production use.

Quickstart

Get running in under 5 minutes

API Reference

Upload and download files