Skip to content

sayedhfatimi/object0

Repository files navigation

object0

object0 logo

A free and open-source desktop S3 bucket manager.

Manage objects across AWS S3, Cloudflare R2, DigitalOcean Spaces, MinIO, Backblaze B2, Google Cloud Storage, and any S3-compatible provider from a single, fast, cross-platform desktop app.

License: MIT Version Platform

Built with Tauri · Rust · Bun · React · Tailwind CSS · daisyUI · Zustand


Highlights

  • Multi-provider: One app for all your S3-compatible storage
  • Encrypted vault: AES-256-GCM encryption; API keys never leave the native backend
  • Folder sync: Bidirectional, Google Drive-style sync with conflict resolution
  • Cross-platform: Native builds for macOS, Linux, and Windows via Tauri
  • Fast transfers: Multipart uploads, concurrent job queue, live progress events

Table of Contents

Features

Storage & Profiles
  • Multi-provider profile support for AWS S3, Cloudflare R2, DigitalOcean Spaces, MinIO, Backblaze B2, GCS, and generic S3-compatible endpoints
  • Encrypted vault persistence with passphrase-based unlock
  • OS keychain integration for optional remembered unlock
  • Profile test/validation and default bucket support
Object Browser
  • Table and grid views
  • Breadcrumb navigation and folder traversal
  • Multi-select, object metadata, rename, delete, create-folder
  • Favorites and bucket tabs with state restoration
Transfers & Jobs
  • Upload/download (single and folder)
  • Copy/move/cross-bucket transfers
  • Archive download support
  • Concurrent queue with progress, speed, ETA, cancel, and persisted history
Sync
  • Bucket-to-bucket sync preview + execute
  • Folder sync rules with status/conflict/error events
  • Tray-aware background lifecycle for long-running sync work
Sharing & UX
  • Presigned share links with expiration options
  • QR code generation and share history
  • Theme toggle, command palette, keyboard shortcuts, and toast notifications

Installation

Download the latest release for your platform from the Releases page.

Platform Architecture Format
macOS Apple Silicon, Intel .dmg
Linux x64 .AppImage / .deb / .rpm
Windows x64 .msi / NSIS .exe

Arch Linux (AUR)

object0 is also available on AUR as object0-bin.

Install with your AUR helper:

yay -S object0-bin
# or
paru -S object0-bin

Or build/install manually:

git clone https://aur.archlinux.org/object0-bin.git
cd object0-bin
makepkg -si

Development

Prerequisites

Setup

git clone https://github.com/sayedhfatimi/object0.git
cd object0
bun install

Run (Web only)

bun run dev

Run (Desktop app)

bun run dev:app

Build

# Frontend typecheck + production bundle
bun run build

# Native desktop bundles (Tauri)
bun run build:app

Architecture

┌──────────────────────────────────────────────┐
│                 Tauri Runtime                │
│                                              │
│  ┌──────────────┐     ┌──────────────────┐   │
│  │ Rust Backend │◄───►│  React Webview   │   │
│  │ (src-tauri)  │ IPC │  (src/mainview)  │   │
│  │              │     │                  │   │
│  │ • Vault      │     │ • Zustand stores │   │
│  │ • S3 ops     │     │ • UI components  │   │
│  │ • Job queue  │     │ • Tailwind/Daisy │   │
│  │ • Sync logic │     │                  │   │
│  └──────────────┘     └──────────────────┘   │
└──────────────────────────────────────────────┘
  • Rust backend (src-tauri): vault, profiles, S3 operations, queueing, folder sync, tray lifecycle, updater hooks
  • React frontend (src/mainview): application shell, stores, and typed RPC calls/events
  • Shared contracts (src/shared): RPC schema and shared types

Project Structure

src/
├── main.tsx                # Vite entry
├── mainview/               # React UI
│   ├── app/
│   ├── components/
│   ├── hooks/
│   ├── lib/
│   └── stores/
└── shared/                 # RPC/types shared with backend

src-tauri/
├── src/
│   ├── main.rs             # native entry
│   └── lib.rs              # RPC router + backend runtime
├── capabilities/
└── tauri.conf.json

Scripts

Command Description
bun run dev Start Vite dev server
bun run dev:app Start Tauri desktop app in dev mode
bun run build Type-check and build frontend
bun run build:app Build desktop bundles with Tauri
bun run check Run Biome checks
bun run check:all Biome + frontend build + cargo check
bun run lint Run Biome linter
bun run format Format code with Biome
bun run updater:manifest -- ... Build/merge static updater manifest
bun run updater:verify -- ... Verify hosted updater manifest + artifact URL

License

MIT

About

Manage objects across AWS S3, Cloudflare R2, DigitalOcean Spaces, MinIO, Backblaze B2, Google Cloud Storage, and any S3-compatible provider from a single, fast, cross-platform desktop app.

Topics

Resources

License

Stars

Watchers

Forks

Contributors