Licences & credits

The app

Open-source projects that run in your browser or in the Worker that serves you.

  • React — Meta and the React community · MIT

    Every page you see is a React application.
  • React Router — Remix Software / Shopify · MIT

    Decides which page a URL means, and renders it on the server before it reaches you.
  • Material UI — Call-Em-All · MIT

    Nearly every button, dialog and menu in ClanClips is one of theirs.
  • MUI templates — Call-Em-All · MIT

    Several pages are built from MUI's free templates.
  • MUI X Date Pickers — MUI · MIT

    The calendar for saying when a photo was taken.
  • Emotion — Emotion contributors · MIT

    Turns the theme into the styles the browser actually applies.
  • dnd kit — Claudéric Demers · MIT

    Dragging photos into the order you want them in an album.
  • zxcvbn-ts — zxcvbn-ts contributors, after Dropbox's zxcvbn · MIT

    Judges how guessable a new password is, in twelve languages, without sending it anywhere.
  • ExifReader — Mattias Wallander · MPL-2.0

    Reads the camera settings, date and orientation out of a photo you upload.Used unmodified. Source for the covered files is at the link above, under the Mozilla Public License 2.0.
  • Day.js — iamkun and contributors · MIT

    Formats and compares the dates attached to photos.
  • React Email — Resend · MIT

    Builds the sign-in and verification emails we send you.
  • react-countdown — ndresx · MIT

    The timer before you can ask for another sign-in email.
  • xmldom — xmldom contributors · MIT

    Parses the XMP block inside a photo, where scanners hide the date it was scanned.
  • isbot — Omri Lotan · Unlicense

    Tells a crawler apart from a person, so pages are rendered the way each needs.
  • Cloudflare Containers — Cloudflare · MIT OR Apache-2.0

    Starts and talks to the container that looks at your photos.

Fonts

Served from ClanClips as files, unmodified, under the SIL Open Font License.

  • Material Symbols Rounded — Google · Apache-2.0

    Every icon in the interface.Copyright Google Inc. Published by Google under Apache-2.0 and redistributed unmodified by Fontsource under the SIL Open Font License 1.1.

Machine learning models

The three models that look at a photo when you upload it. One of them also reads what you type into a photo search.

  • SigLIP2 (base, patch16-224) — Google DeepMind — Tschannen, Gritsenko, Wang et al. · Apache-2.0

    Describes what a photo is of, so we can suggest tags for it, and matches the words you search for against those descriptions.Both towers, vision and text, exported to ONNX from the published Apache-2.0 checkpoint. Described in arXiv:2502.14786.
  • RT-DETRv2 (R18) — Lv, Zhao, Chang, Huang, Wang and Liu · Apache-2.0

    Finds the people, pets and objects in a photo.Exported to ONNX from the published Apache-2.0 checkpoint. Described in arXiv:2407.17140.
  • InsightFace buffalo_s (SCRFD + ArcFace) — InsightFace · MIT (code) / non-commercial research only (weights)

    Finds faces in a photo and recognises who they belong to.The InsightFace library is MIT-licensed. The buffalo_s model pack is released for non-commercial research use only; commercial use requires a separate licence from InsightFace.

The image-inference service

What runs the models, inside a container with no route to the internet.

  • ONNX Runtime — Microsoft · MIT

    Runs all three models on CPU.
  • InsightFace — InsightFace · MIT

    The face detection and recognition library around the buffalo_s weights.
  • FastAPI — Sebastián Ramírez · MIT

    The HTTP interface the Worker calls to have a photo looked at.
  • Uvicorn — Encode · BSD-3-Clause

    The server that FastAPI runs on.
  • Pillow — Jeffrey A. Clark and contributors, after PIL · MIT-CMU

    Decodes an uploaded photo into pixels the models can read.
  • pi-heif — Alexander Piskun and contributors · BSD-3-Clause (wheels LGPL-3.0, for libheif and libde265)

    Reads HEIC photos, the format iPhones take, which Pillow cannot open on its own.
  • libheif — Dirk Farin, Struktur AG · LGPL-3.0

    Unpacks the HEIF container a HEIC photo arrives in. Ships inside the pi-heif wheel rather than as its own dependency.
  • libde265 — Dirk Farin, Struktur AG · LGPL-3.0

    Decodes the HEVC image inside a HEIC photo. Ships inside the pi-heif wheel rather than as its own dependency.
  • OpenCV — OpenCV team · Apache-2.0

    Crops and resizes faces before they are recognised.The headless build, which OpenCV distributes under Apache-2.0; the opencv-python packaging around it is MIT.
  • Tokenizers — Hugging Face · Apache-2.0

    Splits what you type into a photo search into the tokens SigLIP2's text tower reads.
  • NumPy — NumPy developers · BSD-3-Clause

    The arrays every one of the above passes around.

Used to build the models we ship

Not part of ClanClips — these run once, at build time, to convert the published checkpoints into the form we run.

  • PyTorch — The PyTorch contributors · BSD-3-Clause

    Loads the published checkpoints so they can be traced.
  • Transformers — Hugging Face · Apache-2.0

    Fetches SigLIP 2 and RT-DETRv2 from their model cards and exports them to ONNX.
  • ONNX — The Linux Foundation · Apache-2.0

    The format the exported models are written in.

And everything those bring with them

51 more open-source packages are part of what we run, as dependencies of the projects above — some in your browser, the rest on the server that renders these pages. Their licences ask that their copyright notices travel with the code; ours is minified, so they travel here instead.

Photographs

Used while testing and evaluating our machine learning and computer vision systems. These photographs are not stored, published or shown anywhere in ClanClips, and are not part of anyone's library.

3,175 photographs by 1,351 photographers, each under CC BY 2.0. Thank you.