Files
zpan/docs/roadmap/v2.6.md
T
saltboandClaude Opus 4.6 8dcce94f7c docs: reorder roadmap — prioritize auth and teams over image bed
Move Auth & Access (social login, OIDC, invite codes) to v2.1 and Teams
to v2.2, shifting Sharing, Image Bed, and Branding to v2.3–v2.5. Remove
completed items (Drizzle migration, SVAR replacement) from Image Bed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 09:49:31 -04:00

1.6 KiB

v2.6 — Backup

A lightweight CLI agent that backs up local files to S3 via ZPan.

Major Features

zpan-cli (Rust, in monorepo under native/)

  • One-way backup — push local files to S3, local deletions do NOT delete remote copies
  • Incremental — only upload new or changed files (hash + mtime comparison)
  • Preserve directory structure — local paths map to remote paths as-is
  • Scheduled runs — built-in cron (e.g. every night at 2 AM)
  • Directory watching — optional real-time mode, upload on file change
  • Resumable uploads — large files use multipart upload, resume on failure
  • Config file — YAML config for persistent backup jobs
  • Cross-platform — macOS, Linux, Windows, ARM (NAS friendly)
  • Small binary — ~5MB static binary, no runtime dependencies
  • Docker image — mount volume, set env vars, done (for NAS users)

ZPan API Additions

  • Batch presigned URL endpoint — request upload URLs for many files in one call
  • File fingerprint check — client sends hashes, server returns which need uploading
  • Backup status visible in web UI

User Scenarios

Photographer with a NAS:

I have 500GB of photos on my Synology. I run zpan-cli in Docker, it backs up to R2 nightly. If my NAS dies, I browse and download everything from ZPan's web UI.

Developer with a laptop:

I run zpan-cli backup --dir ~/Projects --cron "0 2 * * *". Every night my projects are backed up. If my laptop gets stolen, I pull everything from ZPan.

v1 Issues Resolved

  • #136 Desktop client — zpan-cli for command line, desktop tray app in v2.7