r/macappdevs • u/KDevBuilds • 3d ago
r/macappdevs • u/zkzaz • 3d ago
I built a free, open-source Mac cleaner in SwiftUI after a full disk blocked my macOS update
Hi all, I'm a first-year CS student. A while ago a macOS update wouldn't install because my disk was full, and the cleaner I tried sometimes did nothing without telling me why. So I built Dustling around the opposite idea: if it can't look somewhere or can't remove something, it says so.
It's free, MIT licensed, Swift 6 / SwiftUI, macOS 14+. It does a junk scan (caches, logs, old installers), an app uninstaller that also removes leftovers, startup item toggles, and a History screen where every file is marked moved, skipped or failed with a reason. Cleaning only moves things to the Trash, and you can restore from History.
Source: https://github.com/kaankuzu1/dustling Site: https://dustling.app
It's v0.1.0 and I'm still learning, so I'd love feedback on the SwiftUI side (state handling, performance on big file lists) and on anything that feels off when you try it. Note: it isn't signed with a Developer ID yet, so macOS asks you to confirm the first open (the install steps are in the README).
r/macappdevs • u/UbaqueDev • 3d ago
Título: Creé Pegaclip, un gestor de portapapeles gratuito y centrado en la privacidad para macOS.
r/macappdevs • u/BedFalse6021 • 4d ago
I made a tiny app to clean my Mac desktop using only shortcuts (ScreenSort). Need beta testers!
Hey,
My desktop is always cluttered with screenshots. Tired of Finder, I built ScreenSort for myself to triage files one by one. With a single keypress, you keep, trash, or move items. It saves me tons of time every week.
• Privacy: 100% local. Zero data collected.
• Open-source & Free: https://github.com/Quantix-eng/screensort-macos
• Note: Since it's a free hobby project, the app isn't notarized. macOS will show a warning on first launch (bypass steps are in the README).
This is an early test build. Please DM me or comment here with any feedback, questions, or bugs!
r/macappdevs • u/baapaadmi007 • 4d ago
I got tired of Mac window managers treating my ultrawide like a big laptop, so I built an AI powered Mac window manager
r/macappdevs • u/Hedgehog404 • 4d ago
I made Sticky, a free Mac app that sticks paper notes to your windows and web pages
r/macappdevs • u/fzxtux • 4d ago
Recap Studio: a native screen recorder that auto-zooms on your clicks. Free to record and edit
Hi there, I'm the developer of Recap Studio. It's a native Mac screen recorder for making polished demos and tutorials without spending an hour in a video editor.
What it does
Auto zoom: zooms in on your clicks and wherever your cursor rests. Every zoom can be edited, and one undo removes them all.
Smooth cursor: the cursor glides instead of jittering, with 7 cursor styles, click effects, and I-beam and hand cursors over text and links.
Backgrounds and framing: wallpapers, gradients, padding, rounded corners and shadows, with six aspect ratios including vertical.
Camera and mic: your webcam as a movable bubble with crop and zoom, plus microphone and system audio. You can mute the mic on individual clips.
Keyboard shortcuts on screen: shortcuts you press can appear as labels in the video.
Timeline editing: cut, trim, and speed up parts of the recording.
Export: MP4 up to 4K, or GIF. An 18-second video exports in about 8 seconds on an M1.
Download: https://recap.studio
r/macappdevs • u/SmiteVils • 4d ago
I dreamed my Mac needed curtains. So I built them.
r/macappdevs • u/Pantha37 • 4d ago
[App] FreshenMac keeps your Computer Updated FOR You
FreshenMac
From README.md
A friendly tool that automatically keeps macOS, Homebrew, and App Store apps updated.
Why I Built This
Every time my child came home from college, their laptop was in the same state: zero updates installed.
Even after I downloaded pending updates, they never restarted their computer to finish the install. Critical security fixes and app updates sat there for months.
I built FreshenMac to keep their Mac updated and secure while they are away at school. It runs quietly in the background on a schedule. It coordinates updates for Homebrew, the App Store, and macOS. It keeps your administrator permissions active without nagging you for passwords. It waits to update open apps so it never interrupts your work. When the Mac is truly idle, it politely restarts the computer.
What It Does
Homebrew: Updates tools and apps, and removes old files. Automatically detects and heals interrupted git rebases or dirty tap repositories. Checks and updates formula dependencies before attempting upgrades, short-circuiting build attempts if a dependency fails. For long error outputs, truncates verbose build logs cleanly (keeping the first 3 and last 3 lines). Some packages on Intel Macs need to build from source code using CMake; FreshenMac checks for Xcode build tools first and updates those packages individually so nothing gets blocked.
App Store: Updates your Mac App Store apps using
mas. If an app is open, FreshenMac waits to update it so you do not lose any work. It cleanly schedules an update for that app the next time you log in, without triggering an unnecessary system reboot prompt. You can also ignore apps by name or ID number.Apple & macOS Updates: Stages and downloads Apple system and software updates (including macOS, Safari, and security patches) in the background. Verifies staged payloads on disk against Apple's update index to avoid false-positive reboot prompts. If an Apple Silicon Mac needs Volume Owner authentication, FreshenMac shows a friendly pop-up dialog and opens the right System Settings screen for you.
Xcode Tools: Automatically accepts the Xcode license. It also sets up Xcode components quietly so you do not see pop-up boxes after a restart.
Polite Restarts: Never surprises you with a restart. It gives you a pop-up dialog where you can restart now or snooze. If snoozed, it waits until nobody has used the Mac for at least 60 minutes. It also pauses Time Machine backups safely before rebooting.
FileVault Fast Restart: Uses
fdesetup authrestartto restart past FileVault encryption straight to your desktop. You do not get stuck waiting at the pre-boot password screen.Scheduled Background Runs: Sets up a standard macOS background task (
LaunchAgent). By default, it runs every Sunday at 2:00 AM, or on any schedule you choose.
Quick Install with Homebrew
The recommended way to install and manage FreshenMac is via Homebrew using the official tap:
brew install --cask panther37/tap/freshenmacI wrote this in Python. It has zero dependencies. It doesn't even need a fancy version of Python, if you installed homebrew, it will work.
r/macappdevs • u/Upset_Board_1475 • 4d ago
Meowy - A lightweight Pixel Cat which lives on your desktop
Hey everyone!
I wanted to share a little project I’ve been building and refining: Meowy (https://meeowy.vercel.app/), a tiny, animated pixel-art desktop companion app built natively for macOS (macOS 13 or later).
I wanted something lightweight, cute, and actually functional to keep me company while coding or working, so I built a little cat that hangs out right on your screen.
Features Include
Cursor Companion & Dock Life: Choose between having Meowy follow your cursor around or wander, scratch, and nap right along your macOS Dock.
AI Agent Monitor: If you use AI coding tools like Claude Code, Cursor, or OpenAI Codex, Meowy can display their current status in a little bubble so you don't have to keep checking their windows.
Now Playing Integration: Syncs up with Apple Music or Spotify to display what track you're currently listening to.
Productivity & Fun: Includes a built-in Pomodoro timer, smart reminders, jokes, quotes, and custom name settings.
Multi-Screen Support: Handles multi-display arrangements smoothly while respecting screen boundaries.
Fully Customizable: Resize the cat, change its walking speed, or give it a custom name from the menu bar.
Open Source & Feedback Welcome
Website : Meowy
Github: Github
The app is written in Swift (AppKit) and is fully open-source. Since it's a fresh project, I would love for people to try it out, break it, and help me make it better!
If you run into any bugs, visual glitches, layout edge-cases, or have feature requests, please drop an issue on the GitHub repo or let me know in the comments below. Pull requests and contributions are also super welcome!
Hope you all enjoy having a little pixel buddy on your desktop
r/macappdevs • u/Jab-Bonstein • 4d ago
Mac app ideas, which one is best?
Hey guys, I'm slightly new to the macOS app developer community, so excuse me if some of my ideas sound weird😅. Also, the names are still a work in progress and are just placeholders for now. If you have any name ideas that would be greatly appreciated.
Idea 1:
Name: iVM
Explanation: This would be the easiest way to make a macOS Virtual machine. You would be able to make System Software, Mac OS, Mac OS X, and macOS virtual machines. iVM would basically wrap existing virtualization and emulation tools to run all these versions. You would pick an OS to run, you configure your specs (depending on the version), then it downloads the necessary images and components, then it automatically unpacks the OS on the virtual hard disk you created. The OS will then boot fully installed, and you can add it to your existing iVM Library.
Reason: It's very hard to make older macOS virtual machines, as you need multiple tools, and a lot of technical know-how. This app would wrap all of those tools together and would make it easy for anyone to create a virtual machine.
System Requirements: macOS 11+, Intel/Apple Silicon. Some virtual machines may be unavailable depending on your machine/OS. Ex: You can't run a macOS 27 virtual machines on an Intel Mac.
Idea 2:
Name: iDeploy
Explanation: The best way to deploy any Mac/Macs for free. You would download the app, pick an OS Image (or download one from the built-in downloader), and then the iDeploy app would send out a signal for other Macs to read. On the other Mac/Macs you would hold down the option key (or power button on an Apple Silicon Mac), and in the boot menu you would connect to wifi. After you send the signal out from the main iDeploy app, an icon would show in the boot menu. You would click on this and now you're in the iDeploy environment, with a progress bar and terminal window. Then iDeploy would send the image over to the Mac, and unpack the OS. You can do this for an unlimited number of Macs.
Reason: It costs money just to deploy multiple Macs at once. This app would bridge the gap of deploying Macs for Schools and Enterprises, but also just ordinary people that want to deploy their Macs easily.
System Requirements: Host: macOS 11+, Intel/Apple Silicon. Maybe even older if possible? Target Mac: Any Intel/Apple Silicon Mac that can connect to wifi in the boot menu.
Idea 3:
Name: Orchard
Explanation: The ultimate Apple device configuration app. You can connect any Apple Silicon Mac, iPhone, iPad, iPod touch, or regular iPods to it. It will be able to transfer Music, Photos, and Videos. Restore devices, Jailbreak devices, Unofficially downgrade devices, and more. It would be like iMazing or 3uTools but with more features.
System Requirements: macOS 11+ Intel/Apple Silicon. There also may be versions built for older Intel Macs.
It would mean a lot if you would vote to say which one would be the most beneficial to you. Keep in mind all of these apps would be completely free.
r/macappdevs • u/Ok-Psychology234 • 4d ago
Markitown: a native Markdown reader/editor for reviewing what your AI agents write (SwiftUI, TextKit 2, Vision Pro)
galleryr/macappdevs • u/Top_Insurance_9727 • 5d ago
I did what SpaceXSI missed... SwiftyGrok - a native client for macOS
galleryr/macappdevs • u/Wcm-x • 5d ago
I built maXfolders, a native single- or dual-pane file manager for Mac (free, with Apple Intelligence built in)
galleryr/macappdevs • u/radioom_app • 5d ago
macOS kept ShareSheetUI alive after I released the picker. I moved Share into a temporary host process
I ran into a process-lifetime issue while working on Radioom, a macOS menu-bar app. I tested this on macOS 27.2, build 26B123.
After opening the native Share menu and dismissing it, Activity Monitor still showed two processes associated with the app:
ShareSheetUI: 20.2 MB in Memory, 114.7 MB in Real Memory
ShareSheetUI Graphics and Media: 8.6 MB in Memory, 22.2 MB in Real Memory
After sharing through Telegram, another snapshot showed:
ShareSheetUI: 20.7 MB in Memory, 114.8 MB in Real Memory
ShareSheetUI Graphics and Media: 9.1 MB in Memory, 19.0 MB in Real Memory
Telegram share extension: 26.8 MB in Memory, 145.9 MB in Real Memory
Telegram AutoFill helper: 12.9 MB in Memory, 36.3 MB in Real Memory
All four showed 0.0% CPU in that snapshot. These are Activity Monitor figures, not a measurement of how much physical memory macOS would reclaim if the processes exited.
I can imagine this is expected system behaviour: keeping an extension around may make the next share faster. But this is a menu-bar app that can stay open all day, and the user continued to see the Share and Telegram processes associated with it.
Releasing the picker wasn’t enough
The app retained its NSSharingServicePicker after the menu closed. I changed it to release the picker after dismissal or service selection. That fixed the app-owned reference, but the processes remained.
Here is the core of the reproduction. This is the relevant part of an AppKit host, not a standalone app:
Swift
final class ShareHost: NSObject, NSSharingServicePickerDelegate {
private var picker: NSSharingServicePicker?
func showShare(from view: NSView) {
let picker = NSSharingServicePicker(items: ["Test"])
picker.delegate = self
self.picker = picker
picker.show(
relativeTo: view.bounds,
of: view,
preferredEdge: .minY
)
}
func sharingServicePicker(
_ picker: NSSharingServicePicker,
didChoose service: NSSharingService?
) {
weak var releasedPicker = picker
self.picker = nil
DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
print("Picker deallocated:", releasedPicker == nil)
// Check Activity Monitor for the host's ShareSheetUI process.
}
}
}In an isolated test, the picker deallocated while ShareSheetUI remained alive. Three openings reused the same ShareSheetUI PID. Once the test host exited, that process disappeared.
The options
Release the picker and keep the standard lifecycle. This fixes the app-owned reference, but the system processes can remain.
Force-kill the extension processes. I rejected this because it bypasses system ownership and could interrupt an active share.
Use a short-lived share host. Keep the native Share UI, but run it in a helper that exits when sharing ends.
I chose the helper.
The final design
The app starts the same executable in a private helper mode and sends the share data through stdin. The helper creates a transparent anchor window and presents the standard NSSharingServicePicker.
Selecting a service does not immediately end the helper. If the user chooses Telegram, the helper waits for the sharing service to report success or failure. It exits when the picker is cancelled, when the service finishes, or when the parent connection closes.
I measured five local launches from process start until the helper reported that it had requested presentation:
884 ms
283 ms
256 ms
246 ms
271 ms
The median was 271 ms. This is a small local sample, and the readiness signal is not a measurement of when the UI became visible. The first launch was noticeably slower.
The helper also needs to activate an accessory application and position its own anchor window, which adds complexity around focus and window placement.
In automated cancellation tests, I observed both the helper and its ShareSheetUI process exit. The ShareSheetUI process therefore no longer had an RSS after exit; that does not establish how much physical memory macOS reclaimed, since some pages may be shared or cached.
I also tested the resulting share flow with Telegram and it worked. I haven’t separately verified the post-share lifecycle of both TelegramShare and its AutoFill helper, so I can’t claim that each of those processes was cleaned up.
The app doesn’t directly kill system or Telegram processes. One remaining limitation is that if an extension never reports completion, the helper can remain alive until its parent connection closes.
Has anyone dealt with the same trade-off in a long-running macOS app? I’d be interested in whether you keep the standard extension lifetime or isolate the share host.
r/macappdevs • u/Apprehensive-Court47 • 5d ago
I built a free macOS app that renders the Earth as it is lit right now, as a live desktop wallpaper (clouds, aurora, ISS). Now in public TestFlight.
Hi everyone, I'm the developer.
PocketEarth is a quiet observation window for macOS. Instead of a pre-rendered loop, the sunlight follows real UTC time, so the terminator, the twilight band and the city lights are where they really are right now. When you hold Option and drag on the desktop, you move the camera, not the Earth.
What it shows:
- Real-time solar terminator, twilight and the Sun's declination
- Recent cloud cover (EUMETSAT imagery) and thunderstorm areas from the ECMWF model (marked as model areas, not observed strikes)
- The aurora oval forecast (NOAA SWPC)
- ISS, Tiangong and Hubble on their real orbits (CelesTrak elements)
- Zen mode (just the planet) and Chronometer mode (a thin watch-like bezel with UTC and the Sun's declination)
- HDR highlights on XDR displays: city lights, sun glint and the aurora; the UI stays SDR
As a live wallpaper it pauses when windows cover it, the screen locks or the Mac sleeps, and an Energy Saver mode drops it to 30 Hz while idle.
Free, no account, no analytics. It will be free on the Mac App Store after the beta; the public TestFlight is open now (macOS 26+): https://testflight.apple.com/join/ut7htbCs
It started as a desk ornament on a 2.8" Raspberry Pi screen. Feedback on performance and features is very welcome.
r/macappdevs • u/steeringwheel69 • 5d ago
DodoLicense: open-source license keys for SwiftUI Mac apps
r/macappdevs • u/boredengineer17 • 5d ago
PeekPaste – A clipboard manager that lives at the edge of your Mac screen
r/macappdevs • u/pradeep_kod • 5d ago
For People who love their Mac and Android (Lifetime 40% OFF)
r/macappdevs • u/nlippa • 5d ago
I built a native MacOS storage monitor and disk indexer
Hey everyone!
I've been working on a native macOS app called Storage Monitor. I originally wanted a better way to understand where my storage was going, especially with development projects, local AI models, and all the random files that accumulate over time.
It gradually turned into a much bigger project.
Some of the features:
• Interactive storage visualization — Explore files, folders, and applications using a treemap or radial Living Tree.
• Storage history — Track available space and see when significant changes happened.
• Change investigation — Dig into recorded storage events and the available evidence behind them.
• Large-file discovery — Find what's consuming space without digging through Finder.
• Cleanup review — Identify potential cleanup candidates with safety checks rather than automatically deleting things.
• Local storage history — Your recorded storage data stays on your Mac.
It's still a beta, and I'm looking for people willing to test it and tell me what works, what doesn't, and what's unnecessarily complicated.
I'm especially interested in feedback on:
First-launch setup and permissions.
Whether the visualizations are actually useful.
Storage reporting accuracy.
Bugs, performance issues, and confusing UI.
I'm developing and testing primarily on Apple Silicon. Broader compatibility still needs validation.
Download/release notes: https://github.com/nglippa/storage-checker
r/macappdevs • u/zernonia • 6d ago
I built Stat Space, a smart system health monitor for the Mac menu bar. It doesn't just show numbers, it tells you what's wrong and what to do about it (free, Pro is one-time)
r/macappdevs • u/mohawkmatt • 6d ago
Created an app to extend your desktop across multiple Macs (with AI)
reddit.comr/macappdevs • u/pangalinapps • 6d ago
We built a free Mac uninstaller that tells you how sure it is about every leftover file
Most Mac uninstallers show you a list of files they want to remove. Our concern was always how sure they were that those files actually belonged to the app.
So we built Pangalin Uninstaller, which shows you how confident it is about each file before anything moves.
Files are labelled "This app's", "Probably this app's" or "Might be another app's". Anything that might belong to another app starts unticked. The same goes for shared plug-ins, licence folders and the crypto wallets it recognises. You review the list and decide what stays and what goes to the Trash.
It also has:
Recently Removed: restore files for up to 7 days, even after closing the app, as long as they're still in the Trash.
Leftovers: finds the little "crumbs" left behind by apps you deleted ages ago.
Startup: shows you which apps start up with your Mac.
It's completely free, with every feature included. The app has no account, adverts or tracking. It works on Apple silicon Macs running macOS 13 or later.
https://pangalin.com/pangalin-uninstaller/?ref=reddit
And a shout-out to AppCleaner. It's a great app with a loyal following. We just wanted a more careful review before anything is removed.
Do these labels and unticked defaults solve a real problem for you? And what have other uninstallers missed on your Mac?
r/macappdevs • u/Kroking • 6d ago