Skip to content

P24L/Limit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Limit - Bluesky Client for iOS

A modern, native iOS client for the Bluesky social network built with SwiftUI and the latest iOS technologies.

📱 Screenshots

Timeline View Timeline View - Lists Main timeline and lists with posts and interactions

Profile View
User profile with posts and following

Favorites View
Save posts and links locally

✨ Features

  • Modern Timeline: Infinite scrolling timeline with real-time updates
  • Lists & Feeds Support: Browse your lists and custom feeds seamlessly
  • Smart Caching: Intelligent post caching for offline reading
  • Thread View: Full conversation threading support
  • Profile Management: View and manage user profiles
  • Favorites System: Save posts and URLs for later
  • Dark Mode: Full dark mode support
  • Native iOS Design: Built with SwiftUI following iOS design guidelines
  • Bluesky Integration: Full AT Protocol support via ATProtocol library

🚀 Getting Started

Prerequisites

  • Xcode 15.0 or later
  • iOS 17.0 or later
  • macOS 14.0 or later (for development)
  • Apple Developer Account (for device testing)

Installation

  1. Clone the repository

    git clone https://github.com/zdenekindra/limit.git
    cd limit
  2. Open in Xcode

    open Limit.xcodeproj
  3. Configure Bundle ID (Optional)

    • Open project settings in Xcode
    • Change Bundle Identifier to your own (e.g., com.yourname.limit)
    • Update Development Team in Signing & Capabilities
  4. Build and Run

    • Select your target device or simulator
    • Press Cmd+R to build and run

First Run

  1. Launch the app
  2. Enter your Bluesky handle (e.g., @yourname.bsky.social)
  3. Enter your App Password (not your main password)
  4. Tap "Login" to start using the app

🛠️ Technology Stack

  • SwiftUI: Modern declarative UI framework
  • SwiftData: Local data persistence
  • ATProtocol: Official Bluesky AT Protocol library
  • KeychainSwift: Secure credential storage
  • SDWebImage: Efficient image loading and caching

📁 Project Structure

Limit/
├── Views/                 # SwiftUI views
│   ├── Timeline/         # Timeline-related views
│   ├── PostUI/           # Post display components
│   ├── ActorUI/          # Profile and user views
│   └── TabUI/            # Tab bar views
├── Model/                # Data models
├── Network/              # Network layer and API client
├── Utils/                # Utilities and helpers
├── DesignSystem/         # Colors and design tokens
└── Assets.xcassets/      # App icons and images

🔧 Configuration

Bundle ID

The app uses a default bundle identifier. For personal use, update it in Xcode:

  • Target → General → Identity → Bundle Identifier
  • Recommended: com.yourname.limit

Development Team

For testing on physical devices:

  • Target → Signing & Capabilities → Development Team
  • Select your Apple Developer account

🤝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

Development Setup

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

📄 License

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

🙏 Acknowledgments

📞 Support

Having issues or questions? We're here to help!

🐛 Bug Reports & Feature Requests

📋 Before Reporting Issues

Please check if your issue already exists in open issues.

💡 Frequently Asked Questions

Q: App crashes on startup
A: Try restarting your device and updating to the latest iOS version.

Q: Can't login to Bluesky
A: Make sure you're using an App Password from Bluesky settings, not your main account password.

Q: Lists or feeds not loading
A: Check your internet connection and try refreshing the timeline.

Q: Images not displaying
A: This might be a temporary network issue. Try refreshing or switching networks.

📱 When Reporting Bugs

Please include:

  • Device model (e.g., iPhone 15)
  • iOS version (e.g., iOS 17.5)
  • App version (found in Settings)
  • Steps to reproduce the issue
  • Screenshots if applicable

🔄 Version History

  • v1.1.0 - Lists & Feeds Support

    • Browse user-created lists and custom feeds
    • Unified timeline picker for Timeline/Lists/Feeds
    • Position management for lists and feeds
    • Seamless content switching
  • v1.0.0 - Initial release

    • Basic timeline functionality
    • User authentication
    • Post interactions
    • Profile management

Note: This is an unofficial Bluesky client. Bluesky and AT Protocol are trademarks of their respective owners.

About

iOS client for Bluesky social network

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages