Cloudillo v0.8.14 — Hand: Pick Up a File, Put It Anywhere

Cross-context file references, a redesigned share dialog, live feed counts, and a stack of backend work

Szilard Hajba ·

0.8.14 is a big one. Thirty-six commits on the frontend, seventeen on the Rust backend, and one feature I’d wanted for a while.

Hand

Pick up a file from anywhere in your Cloudillo and put it somewhere else. Pin it, place it, drop it into a different context entirely — grab something from your personal space and leave it in a community folder. We’re calling it Hand.

The part that matters is underneath. It’s a reference, not a copy. The original stays the source of truth, and when it changes, every place it shows up changes with it. No more five stale copies of the same file scattered across folders, each one slightly wrong in its own way. One file, many homes.

This is the kind of feature that sounds obvious and takes forever, because cross-context references mean cross-context permissions, and getting that wrong is how you leak a file into a community that shouldn’t see it. So it took a while. It’s right now.

The share dialog, rebuilt

The old file sharing dialog had grown organically, and you could tell. It was the kind of UI where you found the thing you wanted by process of elimination.

The new one is one unified list of people, editable links, and a real access-level menu. You look at it and you know who can see the file and what they can do. That’s all it ever needed to be.

The feed got more honest

Reaction and comment counts use coalesced live counts from the server now. Before, when several people piled onto a post at once, the numbers could drift — your screen said four, mine said six. Now the server settles it and everyone sees the same number. There are proper reaction chips, and profile-audience rows are linkable.

Small thing, but a feed where the numbers lie is a feed you stop trusting.

Finding things

Cross-folder file search, with a breadcrumb back to where the file actually lives, so you can search broadly and still know where you landed. The view mode — list or grid — sticks in the URL now, so it survives a reload and a shared link.

And a boot splash that picks up your theme before the first paint. No more white flash blinding you when you open the app on a dark phone at night. That one was personal.

Uploads that tell you what’s happening

Progress, abort, retry, typed errors instead of a generic shrug, and a dedup badge when the server already has the file you’re uploading. There’s a new XD/4K option for the high-resolution folks too. Uploading used to be a black box where you waited and hoped. Now it talks back.

Under the hood (the Rust side)

A lot landed here. sqlx 0.9. A streaming-upload rewrite with hashing pushed to a worker pool, so a big upload doesn’t block everything else. A shared TnId(0) blob store, so a public attachment is stored once instead of duplicated per tenant — which adds up fast when the same image is shared across a server. Plus periodic blob garbage collection to clean up what’s no longer referenced.

DNS lookups retry with backoff now. Federation got history sync between reconnecting servers, so two nodes catch up on what they missed, and a moderation-aware STAT broadcast feeds those live reaction counts.

There’s more. Logout-with-wipe for shared devices, so you can actually use Cloudillo on a borrowed laptop. Offline CRDT edit tracking, so if your network drops mid-sentence your work survives. A failsafe that purges undecryptable cache records instead of throwing a key error in your face.

We also moved frontend type-checking to tsgo — builds feel snappier — while keeping tsc for the npm publish step, so the library output stays byte-identical.

Admin controls

Per-tenant settings with override and reset. An SMTP diagnostic that tells you why a test email failed instead of just failing. Inline editing for registration invitations. And new knobs for the shared blob store, garbage collection, history sync, and the key-failure cache.

Hungarian translations landed across gallery, profile, passkey, and share-link flows too.


A federated network gets a lot less weird when there’s more than one server in the room. If you’re running your own, thank you. If you’ve been waiting to try self-hosting, now’s a good time.

Source on GitHub.

Be Among the First

Join the waitlist — we'll notify you at launch. One email, no spam.

  • Private collaboration you own completely
  • Portable identity — take your network anywhere
  • Free forever, 100% open source

You're on the list!

We'll notify you as soon as Cloudillo is ready. Check your inbox for a confirmation.

By signing up, you agree to our Privacy Policy.

Want to try it now? Docker Hub or GitHub

Got questions? Reach out — we're happy to help!