Resumable uploads

Large files pick up where they left off. No wasted bandwidth.

Streaming

Files are uploaded directly from disk to the network in small chunks. There's no need to load the entire file into memory first, which keeps the app lightweight even for multi-gigabyte videos.

Multipart resume

Large files (over 100 MB) are split into parts that grow from 5 MB to 50 MB. If the upload is interrupted — by a network drop, a pause, or a phone restart — only the remaining parts are uploaded on the next attempt. Completed parts are tracked in the local database and verified by SHA-256 hash.

Deduplication

Every file is identified by its SHA-256 content hash. If a file already exists in your bucket with a matching hash, it's skipped instantly. This works across devices: if you set up a new phone, only genuinely new photos are uploaded.

Real-time progress

The upload speed is measured as a rolling average over the last 10 seconds of net transfer time, excluding overhead like hashing and signing. The progress bar shows actual bytes written to the network, not estimated progress.

← Back to Treemarks