The encrypted store on a destination that holds chunks, manifests, and snapshot history.
A repository is the encrypted store on a destination that holds all the chunks, manifests, and snapshot history the engine needs to reconstruct your files.
Inside a repository, your data is not organized by filename or folder. It is a flat pool of content-addressed, encrypted blocks plus a set of index files that map snapshot IDs and paths back to those blocks. The destination — a bucket on a cloud provider, a folder on an external SSD, a NAS share — sees opaque blobs with hash-based names. Someone who gains read access to the bucket cannot list your files, infer your directory tree, or recover filenames without your passphrase.
A repository is the unit of trust and scope. One repository holds the snapshots of one or more backup sets, dedups across all of them, and unlocks with one set of keys. You can have multiple repositories — one on macup Cloud for offsite, one on a local SSD for fast restore — and the engine maintains them independently.
In macup, each destination you add creates or opens a repository. Point macup at an empty S3 bucket and it initializes the repository on first run, writing a format version, a key-derivation salt, and an empty index. From then on, every snapshot of every backup set you send there lives in that repository, deduplicated against everything already in it.