Daddy, Cull! Photo cards being kept or cleared beside a calendar of dates.

In the first post, I brought our family’s photos and videos into one local archive, organised by the day they were taken. Everything finally had a place.

But bringing 60,000+ files together also brought all the unfinished work together. Duplicates, screenshots, accidental videos, and several almost identical photos of the same moment. The folders were organised. Their contents still needed attention.

I needed a way to work through that archive without turning every session into a project. So I built Daddy, Cull!

It is a local photo and video organiser built around a simple routine: review today’s date across every year, keep what matters, and remove what doesn’t. “Culling” is just the photography word for choosing what to keep.

One date is a place to start

Opening a library with twenty years of photos gives you plenty to look at, but no obvious place to begin. Start at the oldest? The newest? The biggest folder?

Daddy, Cull! gives that decision a default. On 30 September, the Today page brings together photos and videos taken on 30 September in every year in the archive. 2016, 2019, 2023, and whatever else is there. That is the session.

On 30 September, the Today page gathers 30 September from every year: 12 photos from 2016, 3 photos and a video from 2019, a video from 2021, 48 photos and 2 videos from 2023 and 7 photos from 2025 make one session of 74 files.

Review the files, make your choices, and mark the date reviewed. The Year calendar records your progress and shows how much still waits on other dates.

The Today page of Daddy, Cull!, with a short guide to the keys above the day's photos
Today, with its short guide at the top. The photos are generated test images, not ours.
The Year page of our own archive: a calendar of all 366 dates, 14 of them reviewed, coloured by how many files each date holds: fewer than 30, 30 to 100, or more than 100. Red dots mark reviewed dates that have new files waiting.
Our own Year calendar: 14 of 366 dates reviewed so far. The red dots are dates that got new files after I reviewed them.

Some dates will have a handful of files. Others will have hundreds. The useful part is having a defined piece of work instead of an endless timeline.

It also gives the clean-up a reason to be enjoyable. Photos from different years sit beside each other. You get to revisit the memories while deciding which versions of them deserve to stay.

Make the decisions easy

The review itself needs to be quick. If choosing what stays takes several clicks each time, the interface becomes part of the backlog.

Daddy, Cull! puts photos and videos in the same review view, with simple keyboard controls:

  • K keeps an item.
  • X sends it to the Bin.
  • F marks it as a favourite.

Made the wrong choice? ⌘Z takes it back.

Four keys: K keeps, X sends to the Bin, F marks a favourite and Command-Z undoes the last choice.

Related files stay together too. A Live Photo has both an image and a video. A camera shot may have a RAW file and an exported JPEG. Those relationships matter when deciding what to keep.

Two pairs reviewed as one item each: a Live Photo, IMG_4821.HEIC with its video IMG_4821_HEVC.MOV, and a camera shot, A7404251.ARW with its exported A7404251.JPG.

For exact duplicates, there is a separate view. It checks whether files are identical, then lets you choose which copy stays.

That distinction matters. Two similar photos of a child are still two different photos. Daddy, Cull! handles identical copies; I make the judgement about expressions, composition, and which moment I prefer.

Identical copies share the same fingerprint, so one is kept and the rest go to the Bin. Similar shots have different fingerprints, so they stay separate photos and the choice is mine.

New photos need a routine too

Working through the old archive only helps if new files arrive in an orderly way.

Daddy, Cull! has an Import folder for that. Camera files and phone exports go in, and the app files them into the library by the day they were taken. The structure stays simple: Year → Month → Day.

There are also ways to bring in files from iCloud Photos, Apple Photos on the Mac, and Google Takeout exports.

Camera and phone files, iCloud Photos, Apple Photos and Google Takeout all go through Daddy, Cull!, which files each one under the day it was taken, such as 2026, 2026-09, 2026-09-30. A reviewed date that gets new files shows a red dot on the Year calendar.

The aim is to make the next batch easier to deal with. Once the files are together and organised, they can go through the same review process as everything already in the archive.

If new files arrive on a date I have previously reviewed, that date is flagged again. “Reviewed” should mean there is nothing currently waiting for a decision.

Removing a photo needs a way back

A tool for clearing a family archive needs more than a fast delete button.

Removed files go to a Bin first. They can be restored while they remain within the retention period chosen in Settings. The decision log provides a record of what happened.

There is a limit to recovery, and it should be clear. Once a file has been permanently removed, an undo history cannot recreate it.

X moves a file from the Library to the Bin, where it can be restored, or undone with Command-Z, for the retention period you set. When that period expires it is deleted for good, and only a backup can bring it back.

Apple Photos sync is optional and deliberate too. With Cull Sync, removals and favourites can be carried across to Apple Photos. Changes wait until you press Apply, macOS asks for confirmation, and removed photos go to Recently Deleted.

Four steps: choices wait on the Apple Photos page, you press Apply, macOS asks you to confirm, and removed photos go to Recently Deleted in Photos. Because Photos syncs with iCloud, the removals reach iCloud too.

Because Apple Photos syncs with iCloud, those removals affect iCloud as well. That is a decision the person using the app should understand and control.

The archive stays independent

The library is still ordinary folders containing ordinary files. Daddy, Cull! gives me an interface for looking after them, while leaving them usable by other tools.

Photo editing can stay in Lightroom. Finder can browse the folders. Tools such as Immich or Jellyfin can use the same library.

One library of ordinary folders, year, month and day, used by Daddy, Cull! to review and clean, Finder to browse, Lightroom to edit and Immich or Jellyfin to show it on every screen, with a backup copy somewhere else.

This was one of the requirements from the beginning: the archive should remain useful even if I stop using the app.

It also still needs a backup. Keeping files locally gives me control over a copy; protecting that copy means backing it up somewhere else.

From my workflow to a product

Daddy, Cull! started with the problems in our family archive. The product is for anyone facing the same combination: years of photos and videos, files spread across several places, and a clean-up that never quite gets finished.

It is free, open source, and currently in beta. It runs locally on macOS 14 or newer with a browser interface, and can also run on a server with Docker.

The first step was giving every file a place. Daddy, Cull! gives the archive a routine.

You can see the daily review and explore Daddy, Cull! here.