finds.dev

insidegui/DarkModeBuddy

Switch your Mac's system theme based on the ambient light intensity.

View on GitHub

★ 585SwiftBSD-2-Clauseupdated May 2026

// the take

A tiny macOS menu bar utility that flips between Light and Dark mode by reading the Mac's built-in ambient light sensor instead of the clock, so it reacts to where you actually are rather than what time zone macOS thinks you're in. It's for anyone who uses System Settings' time-of-day Auto mode and resents a software default dictating interface theme while they're sitting in a dim room.

It reuses the same ambient light sensor the OS already uses for display brightness instead of inventing a new signal, so there's no extra hardware or background polling trick involved. The debounce window before switching is a real UX detail — it stops the theme flapping back and forth when a cloud passes over or someone walks by a lamp. Codebase is genuinely small (a couple of Swift files plus a thin Core Graphics/IOKit bridge in DarkModeBuddyCore), so there's not much surface area to break or audit.

It only works on Macs with a built-in ambient light sensor, which rules out every desktop Mac (Mac mini, Mac Studio, Mac Pro) and any external display — a sizable chunk of the Mac install base gets nothing. Reading the sensor goes through an undocumented IOKit/private interface, not a public Apple API, so a macOS point release can silently break it and there's no guarantee of a fix on Apple's schedule. It's a single-maintainer, donation-funded side project — fine for a hobby tool, but there's no issue triage SLA or roadmap if the sensor API shifts again or Apple adds a public hook that would make this redundant.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
585
Forks
26
Language
Swift
License
BSD-2-Clause
Last commit
13 May 2026

// nearby

If DarkModeBuddy isn't quite it.

All repos →