Glowing object0 logo over a dark network of connected storage buckets and data nodes

Introducing object0: S3 Storage, Made Accessible

7 min read
0:00--:--

When you spend enough time building things, you start to notice thatstorageis never just storage. It becomes a quiet tax you pay every single day: the friction of deciding where something should live, the overhead of remembering how to get it back, the nagging doubt about whether it’s actually safe, and the slow creep of costs that somehow never feel proportional to what you’re storing.

We’re told convenience is the point, that the mainstream choices are the obvious onesDropbox, Google Drive, OneDrive, iCloudand they are convenient, until they aren’t. The pricing tends to balloon the moment you take your data seriously, and the workflows remain shaped around consumer habits, not around the reality of building and shipping software. Even when you’re using them forpersonalfiles, the moment you think like a developerpredictable costs, transparent access patterns, automation, composabilitythe cracks show.

That’s why I’ve leaned on S3-compatible object storage for years. Not just for applications in development, but for my own personal storage as well. Services like Cloudflare R2 and Backblaze B2 are almost offensively good value when you compare them to traditional drive-style providers, because you usually pay for what you use rather than for a bundle designed to gently push you into the next tier.

And there’s a kind of honesty to object storage: it doesn’t pretend to be a magical folder in the sky. It’s a system with explicit trade offs, explicit APIs, and clear levers. It also comes with the baseline expectations you want in a world where data is your second nervous systemencryption in transit, encryption at rest, and the ability to layer your own safeguards on top. Pair it with something like a Cryptomator vault and you’re not just saving money, you’re reclaiming a level of control and privacy that should have been default in the first place.

But S3 has its own problem, and it’s a problem you only feel once you’ve committed to it: accessibility. Object storage is powerful, but it isn’tfriendlyin the traditional sense. It doesn’t show up like a drive unless you build a bridge to make it feel that way. You can live in a terminal with rclone, and I did for a long time, but that lifestyle slowly turns into a brittle ritual. Your memory becomes part of the system. You’re constantly recalling which command you used last time, which flags matter, what the remote is called, whether you’re syncing in the right direction, whether you’re about to overwrite the wrong folder because you’re half awake and moving too fast. And the moment you’re managing more than one bucketpersonal storage, project storage, different providers, different credentialsyour command history starts to resemble a museum of tiny decisions you no longer remember making.

That’s the moment object0 was born. Not out of a grand desire to buildyet another tool,” but out of the very ordinary frustration of living in a digital world and realising that the simplest tasksuploading a folder, moving files between buckets, grabbing a set of objects quickly, synchronising across providerswere still costing me too much attention.

I wanted something that treated S3 as what it actually is: a universal, provider-agnostic substrate for modern storage, one that deserves a first-class interface without the first-class price tag. I also wanted something that didn’t punish you for being on Linux, or for not living inside a single ecosystem. The options narrow quickly once you factor in your actual constraints: your OS, your budget, and your need for a workflow that doesn’t break the moment you apply it to real projects.

object0 is a completely free and open-source, cross-platform desktop application for managing multiple S3 buckets across multiple providers. It’s meant to be the missingeveryday interfacefor object storage: the part that lets you work with buckets the way you already think about your data, without forgetting that the underlying system is still S3. It’s designed to feel simple when you open it, but capable when you push it. You launch the app, set an encryption passphrase to secure your vault, and from that moment the app treats your credentials like they matterbecause they do. Your vault is where your API keys live, and it’s not a hand-wavy promise ofwe encrypt stuff.” The vault is encrypted locally using AES-256-GCM, with keys derived via PBKDF2, and the design keeps API keys confined to the main process so they don’t leak into the UI layer by accident. In practice that means your secrets stay where they belong: on your machine, behind a passphrase, and away from the parts of an app that are most likely to be scraped, logged, or simply mishandled.

From there, profiles let you define providers and accounts, and if your API key has access to multiple buckets, you don’t have to duplicate configuration endlessly. You add the profile once, and the buckets are simply there, ready to be managed. Right now, object0 is still a work in progress, but it’s already useful in the way that matters most: it reduces friction immediately. The core feature set exists because those are the tasks I kept repeating. You can upload single files or batches, you can upload folders, you can move and synchronise files and folders between buckets even when those buckets are on different providers, and you can download what you need without turning your workflow into a set of chores. It’s the kind of tool that is hard to describe without sounding mundane, because its value isn’t in noveltyit’s in removing the small recurring frustrations that quietly drain momentum. It exists to make object storage feel accessible again, without forcing you to compromise on cost or control.

A lot of what I care about in this project sits beneath the surface. “Storage managercan sound like a thin wrapper over an API, but the moment you build one, you realise the product is really about trust. If a tool is going to sit between you and your data, it has to earn the right to do that. That’s why security isn’t treated as an optional advanced setting. The vault exists because credentials are notjust config,” and because the difference between a hobby tool and a tool you can live with is whether it respects the seriousness of what it handles. The direction I’ve taken with object0 is grounded in that simple belief: if we’re going to normalise using powerful, low-cost storage, we also need interfaces that respect privacy, minimise risk, and don’t quietly nudge you into unsafe habits just to make onboarding feel easy.

There’s also a bigger philosophy here that I’ve come to appreciate: S3-compatible storage is one of the rare places in the modern internet where competition actually benefits the user. The API is familiar. Providers come and go. Pricing models evolve. Your data doesn’t need to be emotionally attached to a single brand. When you build around the common interface, you stop treating storage as a lifestyle choice and start treating it as infrastructure. And once you do that, you naturally want tooling that supports that freedomtooling that makes moving between providers feel normal, not exceptional. object0 is my attempt to build that tool in a way that stays honest: honest about being a work in progress, honest about what it can do today, and committed to becoming better without becoming bloated.

So yes, it’s not finished. There’s more to build. I want to add local-to-remote bidirectional folder syncing, and I still need to implement auto-updates and proper binary releases so people can install it like a normal application instead of treating it like a dev project. Those pieces are coming. But I didn’t want to wait for some imaginarycompletemoment before letting it exist in public, because tools like this get better when they’re used, questioned, pushed, and shaped by real needs rather than by isolated assumptions. The foundation is there, it’s functional, and it’s already solving the problem that caused it to exist in the first place.

If any of this resonatesif you’ve ever found yourself juggling buckets and credentials and half-remembered commands, if you’ve ever wanted the economics of object storage without the accessibility penaltythen object0 is for you. It’s open-source because it should be. It’s cross-platform because it has to be. And it’s being built in the open because the whole point is to make a tool that people can trust, extend, and rely on without needing permission. I built it out of necessity, but I’m sharing it because I don’t think I’m the only one living with this problem. You can find the source at the GitHub repo.

Related posts

© 2026 Valeon. All rights reserved.