File uploads
Upload files into OpenBucket from your NestJS app — the uploadFrom helper, the multer storage engine, and direct browser uploads.
Image transforms
Resize, crop, and re-encode images on the fly with GET query params — cached, bounded, and safe by default.
Events and webhooks
React to object writes and deletes — in-process @OnObjectCreated handlers for embedders, and signed HTTP webhooks for external services.
Sharing files
Hand out time-limited download and upload links, direct-browser-upload tokens, and permanent public URLs.
Multi-tenancy
Model tenants with buckets and scoped access keys, and separate operators with full vs read-only admin roles.
Backup and restore
Take per-bucket and whole-instance .zip snapshots on demand or on a schedule, with retention and optional off-box push.
Replication and tiering
Mirror objects one-way to an external S3 target with a durable outbox, tier cold objects off-box with transparent read-through, and reconcile drift.
Securing OpenBucket
A practical hardening checklist — strong secrets, argon2id admin hash, bucket policies, scoped keys, read-only admins, TLS, security headers, rate limits, and integrity scrubbing.
Observability (metrics & tracing)
Scrape OpenBucket with Prometheus, chart it in Grafana, and add OpenTelemetry tracing.
The openbucket CLI
Manage buckets, keys, backups, and replication from the terminal — dependency-free and credential-safe.
The admin console
A guided tour of the Angular admin console — dashboard, buckets, object browser, search, and settings.