Latest: a macOS utility that checks which of your apps are out of date
A small utility app for macOS that makes sure you know about all the latest updates to the apps you use.
At a glance
- What is it?
- Latest is a GPL-3.0 Swift app that scans your Mac for apps from the Mac App Store and apps using Sparkle, then shows what changed. It is small, it is free, and it covers two update channels only.
- Who is it for?
- Adopt Latest if you run a Mac where most apps come from the Mac App Store or ship with Sparkle, and you want one window that lists what changed instead of opening each app. Skip it if your toolchain lives in Homebrew formulae, Electron auto-updaters or vendor-specific updaters, because the README says Latest supports only the Mac App Store and Sparkle.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 74 days ago.
- What is it written in?
- Mainly Swift, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The gap Latest fills on a Mac
macOS has no single place that answers the question "which of my apps are out of date". The Mac App Store handles its own downloads and nothing else. Apps distributed outside the store often bundle Sparkle, an update framework that checks a feed and offers a new version, but each app runs that check on its own schedule, or not at all if you never launch it. Latest exists to aggregate those two channels into one overview, per the README: "Latest currently supports apps downloaded from the Mac App Store and those that use Sparkle for updates." The target user is a Mac owner who installs a lot of small indie apps and wants to see, in one pass, which ones changed and what changed. It is not a package manager and it is not a system updater. The README frames it as a free and open-source app developed in the author's free time, and the release history backs that up: 0.11 landed on 2025-06-12, then 0.12-beta1 on 2025-11-21 and 0.12-beta2 on 2026-02-09. The repository's last push was on 2026-07-18, so work on it continues, but the release cadence is measured in months, not weeks.
How the scan works: two sources, one window
The architecture visible in the repository is a native macOS app. The top-level entries include Latest.xcodeproj, a Latest/ source directory, Frameworks/, Sparkle/ as a submodule, and Tests/. The README states Xcode 11 and Swift 5 are required to build it, which places the codebase in the Cocoa/AppKit era of macOS development rather than a newer SwiftUI-only stack. The presence of Sparkle as a git submodule is the clearest signal about the mechanism: Latest embeds the same framework that Sparkle-based apps use, so it can read the update feeds those apps declare and compare the advertised version against what is installed. For Mac App Store apps, the app has to query the store's own metadata rather than a Sparkle feed. The README does not document how detection works, which apps are excluded, or how often a scan runs. That silence matters if you are trying to predict results on a machine with an unusual app mix. What the README does promise is the output: a quick overview of which apps changed and what changed, with the option to update them right away. Treat the update action as a convenience layer over each app's own mechanism, not as a replacement for it.
Installing Latest with Homebrew Cask
The README lists three installation paths: a direct download, Homebrew Cask, and building from source. Homebrew Cask is the one that fits a terminal workflow. If Homebrew is not installed, the README points to brew.sh for instructions; after that, the command is a single line. Run it and Homebrew resolves the cask named latest, downloads the app, and links it into your Applications folder.
First run and what to expect
The manual route is documented just as plainly. You download the release zip, double-click to unzip if that does not happen automatically, and move Latest.app into the Applications folder. The README does not describe a first-run wizard, a permissions prompt or a scan interval, so the honest expectation is: launch it, and it presents the list of apps it found and their update state. If you would rather track a specific build, the README says earlier versions are on the Releases page.
Building from source and the submodule trap
Building is documented for contributors: clone with submodules, open Latest.xcodeproj, select the Latest scheme, and build. The --recurse-submodules flag is not optional in practice. The repository has a .gitmodules file and a Sparkle/ directory, so a plain clone leaves that dependency empty and the build will not resolve it. The README also pins the toolchain at Xcode 11 and Swift 5. That is a constraint worth taking literally: a modern Xcode may still open the project, but the README gives no statement that newer toolchains are supported, and the repository shows a .travis.yml at the top level, which suggests continuous integration configured around that era. If your goal is simply to use the app, the cask is the shorter path. Build from source only if you intend to change something.
Where Latest is the wrong tool
The support boundary is explicit and narrow. Apps installed through Homebrew formulae, apps with their own auto-updaters, and anything that is not distributed through the Mac App Store or Sparkle will not be covered. On a developer machine that is most of the interesting software. The README also does not document rollback, downgrade, or what happens when an update fails partway through, so Latest should not be treated as a safety net for a production Mac. The release channel is a second caveat: the newest release listed is 0.12-beta2, a beta, published on 2026-02-09. A user who wants only stable builds is pointed at 0.11 from 2025-06-12 by the release history, and that build is roughly a year old relative to the most recent push. Finally, the README describes development as happening in the author's free time and directs feature ideas and bugs to the Issues section, which sets the support expectation: issues are the channel, not a commercial SLA.
How it differs from MacUpdater and macupdater-style tools
The closest category of alternative is a commercial Mac app updater that maintains its own curated catalogue of application versions and downloads installers itself. The difference in approach is where the version truth lives. A catalogue-based tool decides what the current version is by scraping and curating vendor pages, so it can cover apps that have no update feed at all, at the cost of being a closed database that must be maintained continuously. Latest does the opposite: it reads the update feeds that Sparkle-based apps already publish, and defers to the Mac App Store for store apps. That means no central catalogue to fall out of date, and no coverage of apps that never declared a feed. For an engineer, the trade is legible. You get a small GPL-3.0 Swift app you can read and build, and you give up breadth. If your app list is mostly Sparkle apps, Latest covers nearly all of it. If it is mostly command-line tools and vendor installers, a catalogue tool or a package manager covers more.
Licence and the cost of staying current
Latest is licensed under GPL-3.0, per the repository's LICENSE.md, and the README states the app is free to use with an optional donation link. For anyone using the app as-is, the licence is not a practical concern. It becomes one if you fork it and distribute a modified binary: GPL-3.0 carries source-availability obligations, and the repository's use of a Sparkle submodule means you inherit that dependency's licensing terms as well. This is a description of the licence file, not legal advice; read LICENSE.md and Sparkle's own terms before shipping a derivative. The upgrade cost is low in the ordinary case. Homebrew Cask tracks releases, so brew upgrade --cask latest is the maintenance action, and the app itself is small enough that the only real cost is the months-long gap between releases and the fact that the current head of the release list is a beta.
Editorial conclusion
Adopt Latest if you run a Mac where most apps come from the Mac App Store or ship with Sparkle, and you want one window that lists what changed instead of opening each app. Skip it if your toolchain lives in Homebrew formulae, Electron auto-updaters or vendor-specific updaters, because the README says Latest supports only the Mac App Store and Sparkle. Before installing, confirm which of your apps actually use Sparkle; the README does not say how Latest detects them, so that is the first thing to check on your own machine. The latest release in the repository is 0.12-beta2 from 2026-02-09, so if you need a stable build, look at 0.11 from 2025-06-12 instead.
Frequently asked questions
How do I install Latest on macOS?
The README lists three routes: download the release zip and move Latest.app into Applications, run brew install --cask latest if you have Homebrew, or clone the repository with submodules and build Latest.xcodeproj in Xcode. The Homebrew Cask route is the shortest.
Which apps can Latest check for updates?
The README states that Latest currently supports apps downloaded from the Mac App Store and apps that use Sparkle for updates. Apps distributed by other means are outside that scope.
Does Latest need Xcode to run?
No. Xcode 11 and Swift 5 are required only for the build-from-source path described in the README. The download and Homebrew Cask installation routes give you the app without a toolchain.
What licence is Latest released under?
The repository includes LICENSE.md and the project is listed as GPL-3.0. The README separately notes that the app is free to use, with an optional donation link for supporting development.
How do I update Latest itself?
If you installed it through Homebrew Cask, the cask tracks releases, so the upgrade path is brew upgrade --cask latest. The README does not describe a self-update mechanism inside the app.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/mangerlahn-latest)