A modern iOS client for Bluesky, built with SwiftUI and the AT Protocol.
- π Fast & Native: Built entirely in SwiftUI for optimal iOS performance
- π± Modern Design: Clean interface following iOS design guidelines
- π Real-time Updates: Live timeline updates and notifications
- πΌοΈ Rich Media: Full support for images, videos, and embeds
- π¬ Direct Messaging: Full chat functionality with emoji reactions
- π¨ Themes: Light, dark, and dim theme options
- βΏ Accessibility: Full Dynamic Type and VoiceOver support
- π Secure: Biometric authentication and secure credential storage
- iOS 18.0+
- Xcode 16.0+
- Swift 6.0+
- Clone the repository:
git clone https://github.com/joshlacal/Catbird.git
cd Catbird- Open the project in Xcode:
open Catbird.xcodeproj- Build and run the project (βR)
Catbird uses modern Swift patterns and SwiftUI best practices:
- State Management:
@Observablemacro for reactive state - Concurrency: Swift 6 structured concurrency with actors
- Networking: Petrel AT Protocol library
- Navigation: Type-safe navigation with SwiftUI's navigation APIs
Catbird/
βββ App/ # App entry point and configuration
βββ Core/ # Core infrastructure
β βββ Extensions/ # Swift and SwiftUI extensions
β βββ Models/ # Data models
β βββ Navigation/ # Navigation system
β βββ State/ # State management
β βββ UI/ # Reusable UI components
βββ Features/ # Feature modules
β βββ Auth/ # Authentication
β βββ Chat/ # Direct messaging
β βββ Feed/ # Timeline and feeds
β βββ Profile/ # User profiles
β βββ Settings/ # App settings
βββ Resources/ # Assets and resources
Contributions are welcome! Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.
- Petrel - Swift library for the AT Protocol
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Petrel, a Swift implementation of the AT Protocol
- Thanks to the Bluesky team for creating an open social protocol
- Bluesky: @josh.uno
- GitHub: @joshlacal