LimitedRound 2 is open. Get your first month free, no extra charge.Join the waitlist ›
iOS, defined

What is CocoaPods?

TL;DR. CocoaPods is a dependency manager for Swift and Objective-C projects on Apple platforms. You list libraries in a Podfile and run pod install to download and link them. It was the standard for years, and in 2024 its maintainers announced it is now in maintenance mode.

CocoaPods is a dependency manager for Swift and Objective-C projects on Apple platforms. It lets you declare the third-party libraries an app needs in a single file and then installs and links them for you. For most of the 2010s it was the standard way to add libraries to an iOS app.

How CocoaPods works

You list the libraries you want, called pods, in a file named the Podfile. Running the command pod install reads that file, downloads each pod from a central index, and generates an Xcode workspace that links the pods into your app. The exact versions that were installed are written to a Podfile.lock so that everyone on the team builds against the same versions. CocoaPods is itself a Ruby tool, so it is installed through Ruby's package system before you can use it. After installing pods you open the generated .xcworkspace rather than the original .xcodeproj.

CocoaPods today

In 2024 the CocoaPods maintainers announced that the project has moved into maintenance mode, meaning it is kept running but is no longer actively developed. Existing projects that depend on CocoaPods continue to work, and many large apps still use it. For new projects, though, Apple's Swift Package Manager has become the default, since it is built into Xcode and needs no extra tooling. Many libraries now publish a Swift package in addition to, or instead of, a pod.

Why it mattered and where AppFlight fits

CocoaPods solved a real problem: before it existed, adding a library often meant manually dragging files into a project and configuring build settings by hand. It standardized that process for the whole community. AppFlight builds new projects with native Swift and SwiftUI and prefers Swift Package Manager for adding dependencies, which is the current default for fresh iOS projects, while CocoaPods remains common in older codebases you might import.

FAQ

What is a Podfile?

A Podfile is a text file at the root of a project that lists the pods, meaning the libraries, that the project depends on, along with optional version rules. Running pod install reads the Podfile, downloads the pods, and sets up an Xcode workspace.

Is CocoaPods still maintained?

The CocoaPods maintainers announced in 2024 that the project has entered maintenance mode and is no longer being actively developed. It still works for existing projects, but most new iOS projects use Swift Package Manager instead.

What is the difference between pod install and pod update?

pod install installs the exact versions recorded in the Podfile.lock so the team stays in sync. pod update ignores the lock file and upgrades pods to the newest versions allowed by the Podfile, then rewrites the lock file.

Sources

Build this app without opening Xcode.

AppFlight turns a plain-English prompt into a real native iOS app and ships it to the App Store. Round 2 is open: free for your first month.

Join the waitlist