pluginagentmarketplace/custom-plugin-ios · Archived

ios-networking

Master iOS networking - URLSession, async/await, REST APIs, authentication

First seen Feb 7, 2026

Installation

$ npx skills add pluginagentmarketplace/custom-plugin-ios --skill ios-networking

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from pluginagentmarketplace/custom-plugin-ios.

npx skills add pluginagentmarketplace/custom-plugin-ios

Browse all from pluginagentmarketplace/custom-plugin-ios

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Also listed on

Alternate registries and mirrors of this skill.

Repository health

Stars 1
License LICENSE
Default branch main
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

Version2.0.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,578 B
  • docs SUMMARY.md 96 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 2 installs

SKILL.md

iOS Networking Skill

Build robust network layers for iOS applications

Learning Objectives

By completing this skill, you will:

  • Master URLSession with async/await
  • Implement type-safe API clients
  • Handle authentication flows (OAuth, JWT)
  • Build offline-first applications

Prerequisites

Requirement Level
iOS Fundamentals Completed
Swift Intermediate
async/await Basic

Curriculum

Module 1: URLSession Fundamentals (4 hours)

Topics:

  • URLSession configuration
  • URLRequest building
  • Response handling
  • Error management

Code Example:

func fetch<T: Decodable>(_ type: T.Type, from url: URL) async throws -> T {
    let (data, response) = try await URLSession.shared.data(from: url)

    guard let httpResponse = response as? HTTPURLResponse,
          (200...299).contains(httpResponse.statusCode) else {
        throw NetworkError.invalidResponse
    }

    return try JSONDecoder().decode(T.self, from: data)
}

Module 2: API Client Architecture (5 hours)

Topics:

  • Endpoint abstraction
  • Request/response interceptors
  • Retry logic with exponential backoff
  • Request deduplication

Module 3: Codable & JSON (3 hours)

Topics:

  • Custom encoding/decoding
  • Date format handling
  • Nested JSON parsing
  • Error handling

Module 4: Authentication (5 hours)

Topics:

  • OAuth 2.0 flow
  • JWT handling
  • Token refresh logic
  • Secure token storage

Module 5: Offline Support (4 hours)

Topics:

  • Response caching
  • Request queuing
  • Sync strategies
  • Conflict resolution

Module 6: Testing Network Code (3 hours)

Topics:

  • Mock URLProtocol
  • Stub responses
  • Network condition testing

Assessment Criteria

Criteria Weight
API client design 30%
Error handling 25%
Authentication 25%
Testing 20%

Common Mistakes

  1. Force unwrapping responses → Use proper error handling
  2. Ignoring cancellation → Respect Task cancellation
  3. Hardcoded URLs → Use configuration
  4. Missing retry logic → Implement exponential backoff

Skill Validation

  1. REST Client: Type-safe API client with Codable
  2. Auth Flow: OAuth 2.0 with token refresh
  3. Offline App: Cached data with sync
  4. Test Suite: 80% network code coverage