explaingit

cocoapods/specs

6,812Audience · developerComplexity · 1/5LicenseSetup · easy

TLDR

The central public index of all CocoaPods libraries for iOS and macOS development, containing the metadata files CocoaPods searches when you add a third-party dependency to an Apple platform project.

Mindmap

mindmap
  root((specs))
    What it is
      CocoaPods central index
      Podspec metadata store
      Public lookup table
    Podspec content
      Library name and version
      Source code location
      License info
      Dependencies
    Workflow
      Authors publish via Trunk
      CocoaPods fetches on install
      Background for most devs
    Audience
      iOS library authors
      macOS developers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Publish your iOS or macOS library to the public CocoaPods index so other developers can install it by name

USE CASE 2

Debug why a specific version of a library is not showing up in CocoaPods search results

USE CASE 3

Inspect historical Podspec metadata to see how a library's configuration has changed across versions

Tech stack

CocoaPodsRuby

Getting it running

Difficulty · easy Time to first run · 30min
MIT license, use freely for any purpose, including commercial projects, as long as you keep the copyright notice.

In plain English

CocoaPods is a dependency manager for iOS and macOS app development. When developers want to add a third-party library to their Apple platform project, CocoaPods handles finding, downloading, and wiring it in automatically. This repository is the central index, called the Master Specs Repo, that CocoaPods searches when you request a library by name. Each entry in this repo is a Podspec file. A Podspec is a small structured description of a particular library: its name, available versions, where the source code lives, what license it uses, and which other libraries it depends on. When you run CocoaPods to install a dependency, it fetches and searches this repo to look up the exact information it needs to retrieve and configure what you asked for. The README is quite short and points to two external guides: one explaining how Podspec files work and how the Specs repo is structured, and another explaining how to create a CocoaPods account and publish your own library to the index via a service called Trunk. Trunk is the official submission system that allows library authors to add or update their entries in this repo. The contents of this repository are what you would look through if you were publishing a library to the public CocoaPods index, debugging why a specific version is not available, or understanding how a library's metadata has changed over time. For everyday app development, CocoaPods downloads and consults this repo automatically in the background, so most developers never interact with it directly. It exists as a public record and lookup table, not as something you actively work in. Everything here is available under the MIT license.

Copy-paste prompts

Prompt 1
Help me write a Podspec file for my iOS Swift library MyLib that depends on Alamofire and is hosted on GitHub, ready for submission to CocoaPods
Prompt 2
I want to publish my iOS framework to CocoaPods for the first time, walk me through creating a valid Podspec and submitting it via Trunk
Prompt 3
My CocoaPods pod search is not finding version 3.1.0 of a library. How do I check the specs repo to see if that version's Podspec exists?
Prompt 4
My Podspec validation is failing with this error. Here is my Podspec file, what is wrong and how do I fix it before submitting?
Open on GitHub → Explain another repo

← cocoapods on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.