Feature

Drop files in a bucket.
They appear, processed.

Ingest shouldn't be a chore you perform. Point a watch folder at an S3 prefix, and anything that appears there flows through the full pipeline on its own — storage, proxies, transcript, auto-tags — and shows up in the library as a notification.

The easy explanation

Like a mailbox that does the work.

Think of a watch folder as a mailbox with a processing plant behind it. You (or a camera, or a producer in the field) drop files into the S3 watch/ prefix. Aperture notices, and each file gets: secure storage, fast proxies for playback, a transcript if it has audio, and AI tags. You never touch the pipeline — it just works.

  • Resumable browser uploads

    Big files upload in chunks. A dropped connection resumes — it never costs you a take.

  • Duplicate check at the gate

    The sha256 fingerprint is taken before anything enters the library.

  • Notifications on arrival

    The team learns "3 new assets" — not "did the upload finish?".

Everything ingest does, automatically.

  • Secure storage on S3/MinIO — your library is the tenant library, shared
  • Playback proxies generated for smooth browser scrubbing
  • Whisper transcription — searchable the moment it lands
  • AI auto-tagging with description (admin toggle)
  • sha256 fingerprint — duplicates blocked, not discovered
  • 512 MB import cap with SSRF host allow-listing for stock

"The library used to start when you opened the app. Now it starts when the file exists."

— watch folders

The file did nothing wrong

It just sat there. Then it edited itself.

Drop files into the bucket and walk away. Storage, proxies, transcript, tags — processed while nobody watches. The library starts where the file exists.

Watch the folder

Drop files in a bucket.
They appear, processed.

Watch folders feed the library while nobody watches. Uploads survive bad connections.