free, but without any guarantee.

Where your data actually lives.

No tracking.

There is no analytics script, no pixel, no session recorder, no behavioral cookie. The reason is partly principle, partly performance: every tracker is bytes you have to download before your photo starts uploading.

Client-side JavaScript is kept to the minimum required for the upload queue, hashing, and resumable chunking. Nothing else runs in your browser.

Services that handle a request.

  • Tigris

    object storage, global

    Holds the original image files and the generated previews. Tigris is globally distributed: new uploads land first in the region closest to the uploader, then replicate from there.

  • Fly.io

    application hosting

    Runs the Phoenix application that serves the site, handles uploads, and processes images.

  • Hetzner

    database, Germany

    Hosts the Postgres database that stores collection metadata, upload state, and image records. No raw image bytes are stored here.

  • Cloudflare

    DNS only, no caching

    Resolves the domain. There is no proxy and no caching layer in front of the application. Cloudflare does not see your requests beyond DNS lookup.

What we store about you.

For each collection: the collection ID, the images you upload, their EXIF data, and an animal handle for the device that uploaded each image. No account, no email, no IP log beyond what the hosting layer keeps for operating the service.

Questions?

Email kb@v01.io. For legal details about who operates this, see v01.io.