Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. Overcoat

Overcoat

NOASSERTIONObjective-C3.0.0

A small but powerful library for creating REST clients in Objective-C/Swift, built on AFNetworking and Mantle.

GitHubGitHub
1.1k stars104 forks0 contributors

What is Overcoat?

Overcoat is a library for iOS and macOS that simplifies building REST API clients. It abstracts networking logic using AFNetworking and automatically maps JSON responses to model objects via Mantle, reducing boilerplate code. It also supports Core Data serialization and integrates with reactive programming libraries.

Target Audience

iOS and macOS developers building apps that consume RESTful APIs and need clean, maintainable networking code with model mapping.

Value Proposition

Developers choose Overcoat for its seamless integration with AFNetworking and Mantle, declarative response mapping, and support for advanced features like Core Data persistence and reactive extensions without reinventing the wheel.

Overview

The perfect accessory for Mantle and AFNetworking.

Use Cases

Best For

  • Building REST clients for Twitter-like APIs with complex response structures
  • Integrating Core Data with network-fetched model objects
  • Reducing boilerplate in AFNetworking-based networking layers
  • Adding reactive programming (ReactiveCocoa) to networking code
  • Handling APIs with envelop responses or custom error formats
  • Simplifying model mapping in Objective-C or Swift projects

Not Ideal For

  • Swift-only projects preferring Codable for JSON serialization without Objective-C dependencies
  • Teams minimizing third-party libraries, as Overcoat requires AFNetworking and Mantle
  • Applications with simple networking needs that don't justify response mapping or Core Data overhead
  • Projects requiring production-ready stability, given its beta status and maintainer search

Pros & Cons

Pros

Declarative Response Mapping

Overcoat lets you define model classes for resource paths with wildcard patterns (e.g., statuses/*), simplifying API interactions as shown in +modelClassesByResourcePath overrides.

Core Data Integration

Automatically persists model objects to Core Data when they support MTLManagedObjectSerializing, reducing manual save code, demonstrated in the TwitterTimelineExample.

Flexible Error Handling

Supports custom error model mapping and envelop responses via OVCResponse subclasses, handling APIs with non-standard structures like App.net.

Reactive Extensions

Offers first-party integrations with ReactiveCocoa and PromiseKit through separate pods/frameworks, enabling modern asynchronous workflows without extra glue code.

Cons

Heavy Dependencies

Relies on AFNetworking and Mantle, adding significant library weight and potential compatibility issues, especially in Swift projects where native alternatives like Codable exist.

Beta Stability Risks

Version 4.0.0 is in beta with API-breaking changes, and the README notes maintainers are being sought, indicating potential instability and limited long-term support.

Objective-C Centric

Built on Objective-C libraries, it may not fully leverage Swift features and could require bridging overhead, making it less ideal for Swift-native codebases.

Frequently Asked Questions

Quick Stats

Stars1,095
Forks104
Contributors0
Open Issues25
Last commit9 years ago
CreatedSince 2013

Tags

#ios#rest-client#objective-c#afnetworking#swift#core-data#macos#networking

Built With

A
AFNetworking
C
Core Data

Included in

iOS51.7k
Auto-fetched 5 hours ago

Related Projects

AlamofireAlamofire

Elegant HTTP Networking in Swift

Stars42,374
Forks7,651
Last commit10 hours ago
AFNetworkingAFNetworking

A delightful networking framework for iOS, macOS, watchOS, and tvOS.

Stars33,487
Forks10,570
Last commit3 years ago
MoyaMoya

Network abstraction layer written in Swift.

Stars15,352
Forks2,008
Last commit1 month ago
RestKitRestKit

RestKit is a framework for consuming and modeling RESTful web resources on iOS and OS X

Stars10,110
Forks2,076
Last commit3 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub