An open-source SwiftUI Mastodon client for iOS, macOS, iPadOS, and visionOS with multi-account support and unique features like tag groups.
IceCubesApp is an open-source Mastodon client built with SwiftUI for Apple platforms, including iOS, macOS, iPadOS, and visionOS. It allows users to connect to any Mastodon instance, browse timelines, interact with posts, and manage multiple accounts with a native, customizable interface. The app solves the need for a fast, lightweight, and feature-rich alternative to web-based or other third-party Mastodon clients.
Mastodon users on Apple devices (iPhone, iPad, Mac, Vision Pro) who prefer a native app experience with advanced features like tag groups, AI-assisted posting, and push notifications. It's also valuable for SwiftUI developers looking to learn from a real-world, modular codebase.
Developers choose IceCubesApp for its unique Mastodon-only features (e.g., tag groups, remote local timelines), full multi-platform support with native SwiftUI performance, and privacy-focused push notifications. Its open-source, modular architecture serves as an excellent reference for building production SwiftUI apps.
A SwiftUI Mastodon client
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides dedicated apps for iOS, macOS, iPadOS, and visionOS with platform-specific UI adaptations, such as a sidebar on macOS/iPadOS, ensuring optimal performance on each Apple device.
Includes unique Mastodon-only features like tag groups for custom timelines and remote local timelines, enhancing user control over content browsing.
Integrates OpenAI API for text correction, hashtag generation, and image descriptions, making post composition more efficient, as detailed in the OpenAIClient package.
Uses a proxy that never reads push notification content, with on-device decoding and rich notifications via Apple's APIs, ensuring user privacy.
Split into Swift packages with MVVM, offering a clean, maintainable codebase that serves as a real-world example for learning SwiftUI development.
Requires manual setup of .xcconfig files with Apple Developer Team ID and bundle ID prefix, which can be a barrier for new contributors or those unfamiliar with Xcode.
Built entirely with SwiftUI, it cannot be ported to non-Apple platforms, restricting its audience to iPhone, iPad, Mac, and Vision Pro users.
AI features rely on OpenAI API, requiring users to obtain and manage API keys, which adds complexity and potential costs or privacy concerns.
Uses straightforward MVVM without patterns like Redx, which might be insufficient for very large-scale apps needing more predictable state handling.