gitwtfhub

wtf is uniqueimages?

glonlas/uniqueimages — explained in plain English

Analysis updated 2026-07-14 · repo last pushed 2016-09-18

JavaScriptAudience · generalComplexity · 2/5DormantSetup · easy

TL;DR

A command-line tool that finds duplicate photos in a folder by comparing what the pictures look like, even if one has been resized or color-shifted. It only works with JPG files.

Mindmap

mindmap
  root((repo))
    What it does
      Finds duplicate photos
      Detects resized images
      Detects color-shifted images
    How it works
      Exact file match check
      Perceptual hash fingerprinting
      Two-pass approach
    Limitations
      JPG files only
      Misses cropped versions
      Misses mirrored versions
    Use cases
      Clean up photo collections
      Find duplicates across cameras
      Manage trip photos
    Audience
      Non-technical users
      Photographers
      Anyone with messy folders

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Find and remove duplicate photos scattered across subfolders after a trip.

REASON 2

Identify the same image saved at different sizes and quality levels so you can keep only the best version.

REASON 3

Clean up a messy photo collection that has accumulated identical or near-identical pictures.

What's in the stack?

JavaScriptNode.js

How it stacks up

glonlas/uniqueimagesabhay-pratapsingh-ctrl/chaptrabhishek-akkal/finova
Stars00
LanguageJavaScriptJavaScriptJavaScript
Last pushed2016-09-18
MaintenanceDormant
Setup difficultyeasyhardeasy
Complexity2/55/51/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Runs as a command-line JavaScript tool requiring only Node.js, limited to scanning JPG files.

The explanation does not mention any license for this repository.

Wtf does this do

uniqueImages is a command-line tool that finds duplicate photos in a folder, even when they've been altered. If you have two copies of the same picture but one has been resized, brightened, or had its colors shifted, the tool can still tell they're the same image and flag them for you. It only works with JPG files and currently can't catch cropped or mirrored versions. The tool works in two passes. First, it does the obvious check: it looks for files that are byte-for-byte identical, which catches exact copies quickly. Then, for everything that's left, it does something cleverer. It generates a "perceptual hash" for each image, basically a fingerprint that captures what the picture looks like rather than the raw file data. Images with similar fingerprints get grouped together as near-duplicates. This is useful for anyone sitting on a large, messy photo collection. Imagine you've been on a trip, downloaded photos from multiple cameras and phones, and ended up with the same shots saved at different sizes and quality levels scattered across subfolders. Running this tool would surface those groups of matching images so you can pick the best version and delete the rest. One tradeoff worth noting: because it relies on a perceptual hash algorithm from 2006, it has real blind spots. Cropped or mirrored versions of a photo will slip through undetected, and the tool is limited to JPGs only. The README doesn't go into detail on performance with very large collections, but the two-pass approach, quick exact-match check first, then the slower perceptual comparison, is a sensible way to keep things efficient.

Yoink these prompts

Prompt 1
I have a folder of trip photos downloaded from multiple phones and cameras. Write a command-line script in JavaScript that finds duplicate JPG images even if they have been resized or color-shifted, using a perceptual hashing approach.
Prompt 2
Build a Node.js tool that scans a directory for duplicate JPG photos in two passes: first checking for exact byte-for-byte matches, then generating perceptual hashes to group near-duplicates together.
Prompt 3
Help me add a feature to my JavaScript duplicate image finder that outputs groups of matching photos so I can manually review and delete the versions I do not want to keep.

Frequently asked questions

wtf is uniqueimages?

A command-line tool that finds duplicate photos in a folder by comparing what the pictures look like, even if one has been resized or color-shifted. It only works with JPG files.

What language is uniqueimages written in?

Mainly JavaScript. The stack also includes JavaScript, Node.js.

Is uniqueimages actively maintained?

Dormant — no commits in 2+ years (last push 2016-09-18).

What license does uniqueimages use?

The explanation does not mention any license for this repository.

How hard is uniqueimages to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is uniqueimages for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.