Skip to content

Latest commit

 

History

589 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Catbird

A modern iOS client for Bluesky, built with SwiftUI and the AT Protocol.

iOS 18+ Swift 6 SwiftUI

Features

  • πŸš€ 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

Requirements

  • iOS 18.0+
  • Xcode 16.0+
  • Swift 6.0+

Installation

  1. Clone the repository:
git clone https://github.com/joshlacal/Catbird.git
cd Catbird
  1. Open the project in Xcode:
open Catbird.xcodeproj
  1. Build and run the project (⌘R)

Architecture

Catbird uses modern Swift patterns and SwiftUI best practices:

  • State Management: @Observable macro for reactive state
  • Concurrency: Swift 6 structured concurrency with actors
  • Networking: Petrel AT Protocol library
  • Navigation: Type-safe navigation with SwiftUI's navigation APIs

Project Structure

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

Contributing

Contributions are welcome! Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.

Dependencies

  • Petrel - Swift library for the AT Protocol

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Built with Petrel, a Swift implementation of the AT Protocol
  • Thanks to the Bluesky team for creating an open social protocol

Contact

About

SwiftUI Bluesky client app

Resources

Contributing

Stars

35 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages