eternal-flame-ad/yume-pdq — explained in plain English
Analysis updated 2026-07-20 · repo last pushed 2026-03-21
Screen user-uploaded images on a social media platform before they reach other users.
Scan live video streams or newly uploaded video files in near real-time.
Run on-device image screening on mobile phones before uploading content.
Add a fast harmful-content check to an existing image-processing pipeline.
| eternal-flame-ad/yume-pdq | oop7/rquickshare-x | trag1c/crossandra-rs | |
|---|---|---|---|
| Stars | 8 | 8 | 8 |
| Language | Rust | Rust | Rust |
| Last pushed | 2026-03-21 | 2026-05-15 | 2026-03-02 |
| Maintenance | Maintained | Maintained | Maintained |
| Setup difficulty | hard | easy | easy |
| Complexity | 4/5 | 2/5 | 2/5 |
| Audience | developer | general | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires Rust build toolchain plus optional Vulkan SDK for GPU acceleration and specific CPU instruction set support for full performance.
yume-pdq helps platforms quickly check user-uploaded images against a database of known harmful content, such as child exploitation material. It implements PDQ, a hashing method originally from Meta's ThreatExchange project, which creates a compact fingerprint of an image so you can compare images without storing the originals. The library is designed to slot into an existing image-processing pipeline with minimal overhead, adding only microseconds of CPU time per request. The project focuses on making both the hashing and the matching extremely fast. It uses specialized CPU instructions (like AVX512) and can optionally offload the matching work to a GPU via Vulkan. The end result is that on a modern server CPU, it can hash an image and search a database of 10 million known hashes in about 20 milliseconds. It guarantees 100% recall, meaning it will never miss a matching hash, and it automatically checks all eight rotations and reflections of an image in a single pass. A trust-and-safety team at a social media company would use this to screen uploads in near real-time before they reach other users. Because it can process video frames at thousands of frames per second on a single server, it could also be used to scan live video streams or newly uploaded video files as they arrive. It also supports running on mobile hardware, tested on Apple Silicon and recent Google Pixel phones, so the same screening logic could run on-device if an app wanted to check images before uploading them. A few design choices are notable. The project deliberately avoids vendor lock-in, supporting multiple hardware vendors rather than tying itself to one company's chips. It also makes a specific accuracy tradeoff: the optimized hashing code is fast and statistically compatible enough for matching, but the README explicitly warns that you should not use these optimized hashes to populate a shared external database. They're meant for real-time screening, not for long-term hash storage in an external system. The code is also hardened against certain memory-safety attacks, with optional build flags that add security protections with under a 10% performance cost.
A fast image-hashing library that checks user-uploaded images against a database of known harmful content in real time. It fingerprints images and searches 10 million known hashes in about 20 milliseconds without storing originals.
Mainly Rust. The stack also includes Rust, Vulkan, AVX512.
Maintained — commit in last 6 months (last push 2026-03-21).
The explanation does not mention a specific license, so the licensing terms are unknown.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.