Show HN: Oliphaunt – A native Mastodon client for macOS

7 days ago (testflight.apple.com)

I’ve been building Oliphaunt, a native Mastodon client for macOS, as a solo project — designed to be fast, lightweight and feel right at home on the Mac. It’s not built with Catalyst or Electron framework.

Key features:

• Native macOS UI using AppKit with some SwiftUI integration (not a web wrapper)

• Core Data for local caching

• Responsive, keyboard-friendly interface

• UX tailored for desktop-class Mac computers

• Supports multiple accounts, cross-instance timelines and search

You can try it via TestFlight (macOS 14+ Sonoma): https://testflight.apple.com/join/Epq1P3Cw

Feedback is welcome here, on GitHub, or via TestFlight: https://github.com/anosidium/Oliphaunt-Feedback-And-Support

What’s the sense on mastodon lately? I feel like the core concept is also its Achilles heel in that with all these disjointed communities it’s really not a community at all.

  • It's not very community-like out of the box, that's totally true.

    OTOH, after you follow both people and hashtags, it feels pretty much like everything else, more or less.

  • It's the only social media I still use.

    I don't notice "disjointed communities" I just look at the posts from people I follow without knowing which server they are on. I'm aware you can see a list of posts on your local server but I imagine people on most instances (unless the instance has a strong theme like for people from a particular location) never use it.

New iOS (XCode) developer here.

Do you have any pro tips for optimizing workflow, reducing toil in XCode, or speeding up UI testing?

It does look nice.

I can't seem to figure out how to open posts and profiles though. Neither single nor double-clicking does anything. Sometimes double-clicking a post that contains a link would open the link in the web browser. The only thing that works is right click -> open in new window. MacOS 14.7.5 (23H527)

  • Thanks!

    Yes, that’s intentional — to view a thread or profile, use the contextual menu (right-click or control-click). Clicking is reserved for posts that contain a link or preview card, which will open in the browser.

Always great to see native macOS apps! Is there a reason you aren’t using SwiftUI for the whole thing and that you opted for Core Data instead of Swift Data?

  • Swift Data is CoreData in a wrapper.

    Also, not OP, but I’m glad it’s written in AppKit vs SwiftUI purely; AppKit just feels better on the desktop. I can always “smell” a SwiftUI app just like I can an Electron app.

  • Thanks! I’m glad to hear that.

    It’s an AppKit-first app — I’ve used SwiftUI in parts where it fits well, but I’ve avoided relying on it entirely because it’s still maturing, especially on macOS. In certain areas, it can compromise the native look and feel, or introduce unexpected behaviour.

    As for Core Data, it’s a proven and robust framework that already does everything I need. Swift Data is still relatively new and doesn’t yet offer the same level of flexibility or stability for more advanced use cases.

    • Towards the end of COVID lockdowns I wrote a small, native macOS replacement for Zotero and ended up having to go with AppKit. Bit disappointing to hear the look and feel of a Mac assed mac app still hasn’t been replicated in SwiftUI.

      Do you write about your experience with macOS dev at all? I would love to hear about it. I still look back fondly on that experience and toss around the idea of revisiting it, Documentation Archive and all.

Thanks for the TestFlight invite! I’ll install the iOS build and keep an eye on performance, UI responsiveness, and any crash logs. Happy to send feedback through the TestFlight app if anything comes up.