Short answer
Client-side encryption protects data before it leaves the sender device. Encryption at rest protects stored infrastructure such as disks, databases, or buckets. Both can be useful, but they answer different questions: client-side encryption limits provider access to plaintext during normal delivery, while encryption at rest mainly protects stored systems and backups.
Why the difference matters
A service can advertise encryption at rest while still receiving readable file contents before writing them to storage or after reading them back. For sensitive file delivery, ask whether the provider ever receives plaintext file contents, where file keys are generated, how keys are wrapped for recipients, and what metadata is still processed.
How ZipPigeon frames the boundary
ZipPigeon encrypts files in the browser before upload and stores encrypted chunks. The server still coordinates accounts, recipients, expiration, status, and audit events, so metadata does not disappear. The useful claim is precise: file contents are intended to be protected before upload, not merely encrypted by the storage layer.