Docs

BucketDock is a desktop app, so all storage operations run inside the app itself. There is no service or login. You add a connection, the app talks to S3 from your Mac, and access keys are stored in the macOS Keychain.

Install

Download the latest .dmg from the download and install page, drag BucketDock.app into Applications, and launch it.

Current public builds are unsigned developer previews. If macOS says BucketDock is damaged or blocks the first launch, follow the Terminal steps on the macOS install guide.

Add a connection

Click the + button in the sidebar and fill in the form.

AWS S3

Provider: AWS S3
Region:   eu-central-1
Endpoint: (leave empty)
Buckets:  (leave empty to auto-list, or list specific names)

Cloudflare R2

Provider: Cloudflare R2
Endpoint: https://<ACCOUNT_ID>.r2.cloudflarestorage.com
Region:   auto
Buckets:  your-bucket-name

Use the account endpoint, not a bucket-appended URL. For bucket-scoped credentials, list the bucket names in the Buckets field — comma, space, newline or semicolon separated.

S3-compatible (MinIO, Backblaze B2, etc.)

Provider: Custom (S3-compatible)
Endpoint: https://your-endpoint.example.com
Region:   us-east-1
Buckets:  optional list

Transfer queue

Every upload, download and bucket-to-bucket copy is tracked in the dock at the bottom-right of the window. Each row shows live progress (multipart uploads emit per-part progress) and a status indicator. You can:

  • Cancel a running transfer
  • Retry a failed transfer in place
  • Clear finished entries to keep the dock tidy

Browse, filter and preview

  • The toolbar has an inline filter box that narrows the current listing by case-insensitive substring.
  • Click any column header to sort by Name, Type, Storage Class, Size or Modified. Click again to reverse the direction.
  • The Type column shows the default Content-Type S3 would assign when no explicit type is set (application/octet-stream for files, for folders). The real Content-Type reported by the server is shown in the Get Info modal — list_objects_v2 doesn’t include it.
  • Selecting a connection without a bucket shows a Finder-style bucket grid in the right pane.
  • The trailing button on each row opens the same menu as a right-click.
  • Double-click a file (or pick Preview from the menu) to open an inline preview for images, audio, video, PDFs and text files.
  • Pick Get Info to inspect headers and user metadata read-only, or Edit Headers… to change Content-Type, Cache-Control, custom user metadata and more.
  • Renaming a folder or copying a folder between buckets is implemented as a recursive copy of every object below the prefix, followed by a delete of the originals on rename.
  • Renaming also moves an object inside the same bucket — type a path with slashes (e.g. archive/2024/photo.jpg) and the file or folder is copied to that prefix and the original removed.

BucketDock installs a native menu bar with the standard macOS arrangement — File (New Connection, New Folder, Upload Files…, Upload Folder…, Refresh, Get Info), Edit (with native Cut / Copy / Paste / Find), View, Window, and Help with links to bucketdock.com, this documentation page, the GitHub repository and the issue tracker.

Copy between buckets

Right-click one or more files or folders and choose Copy to…. Pick a destination connection (it can be a different provider), a bucket and an optional prefix. You can also click Browse… and drill into the destination tree — clicking a folder sets it as the destination in the same click, so once you can see the folder you want, just hit Copy. Each file becomes a tracked copy transfer that streams through the desktop and reports progress as it goes. Folders are expanded recursively and every object below the prefix is queued.

Window behaviour on macOS

BucketDock follows the standard macOS pattern: clicking the red traffic-light button hides the window so the app keeps running in the background. Click the BucketDock icon in the dock to bring the window back. Use ⌘Q (or BucketDock → Quit) to actually quit.

Keyboard shortcuts

  • Delete / Backspace — delete the current selection
  • Enter on a single folder — open the folder
  • ⌘A — select all visible items
  • ⌘I — open Get Info for the selected file

Where data lives

Connection metadata is stored at:

~/Library/Application Support/BucketDock/connections.json

Secret access keys are stored separately in the macOS Keychain under the service name com.bucketdock.app. As of the latest build all secrets live in a single bundled entry (account bucketdock://secrets-v2) so macOS prompts you once per session instead of once per connection. Legacy per-connection entries are migrated forward on first launch and removed.

Build from source

git clone https://github.com/bucketdock/bucketdock.git
cd bucketdock
pnpm install
pnpm tauri build

Build artifacts are written under src-tauri/target/release/bundle/.

Not yet implemented

  • Object tags
  • Finder reveal
  • Bucket policy inspection