Back to Blog

FFHS: Sovereignty and Total Control with a Private Bucket

What is FFHS?

FFHS (Free File Host System) is an open-source file hosting system designed for home-server or VPS deployment. it acts as your own private and sovereign "bucket": upload files, generate shareable links, and manage your storage without relying on external providers like Google Drive, Dropbox, or S3.

You can see it running at ffhs.hgccarlos.es.


Why Build It?

The main motivation was data sovereignty. I needed a quick way to share files with clean URLs — no ads, no storage limits imposed by a third party, and full control over where my data actually lives.

Existing alternatives (Nextcloud, Seafile, Minio…) are powerful but come with a significant setup curve. I wanted something much simpler: upload and share, nothing else.


Key Features


Tech Stack

The project uses a simple, modern stack:

| Layer | Technology | |-------|------------| | Frontend | Next.js, TypeScript, Tailwind CSS | | Backend | Spring Boot | | Storage | Local filesystem / configurable | | Deployment | Docker + Coolify |

The decision to use Next.js for the frontend and a powerful Spring Boot API allowed for clear separation of concerns: a robust backend with strong typing and a sleek, agile frontend.


Deploying on Your VPS

Deployment is designed to be as straightforward as possible:

With Coolify (recommended)

  1. Add the repository as a new application in Coolify.
  2. Configure environment variables (storage directory, access key…).
  3. Deploy with one click.

In a matter of minutes you have your own file hosting system up and running.


Lessons Learned

Simplicity above all

The temptation when building tools like this is to keep adding features indefinitely: user accounts, permissions, file previews, version history… But FFHS's value is precisely that it does one thing and does it well: host and share files quickly and privately.

Docker as the deployment unit

Having a well-defined backend/frontend separation while still being deployable via Docker significantly reduced operational complexity. For a self-hosting project, this is key.


Conclusion

FFHS is a small but genuinely useful project for day-to-day work. If you're a developer running your own VPS, I'd encourage you to try it out. The source code is available for you to adapt to your own needs.