Receber por email
← Voltar para o catálogo

swift-development

Comprehensive Swift development for building, testing, and deploying iOS/macOS applications. Use when Claude needs to: (1) Build Swift packages or Xcode projects from command line, (2) Run tests with XCTest or Swift Testing framework, (3) Manage iOS simulators with simctl, (4) Handle code signing, provisioning profiles, and app distribution, (5) Format or lint Swift code with SwiftFormat/SwiftLint

367estrelas
Atualizado há 4 meses

Ver no GitHub ↗

Como adicionar

/plugin marketplace add aiskillstore/marketplace

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/swift-development/svg)](https://www.skillteca.com.br/skills/swift-development)

Skills relacionadas

Ver todas de Desenvolvimento →

Alerta por categoria

Receba novas skills de Desenvolvimento toda segunda

1 email curto, só com as skills novas de Desenvolvimento. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Swift Development

Prerequisites

  • macOS with Xcode 15+ installed (Xcode 16+ for Swift 6)
  • Xcode Command Line Tools: xcode-select --install
  • Verify: xcodebuild -version and swift --version

Quick Start

New Swift Package

# Use the included script for full setup
./scripts/new_package.sh MyLibrary --type library --ios --macos

# Or manually
swift package init --type library --name MyLibrary

Build and Test

# SPM packages
swift build
swift test

# Xcode projects
xcodebuild -workspace App.xcworkspace -scheme App \
    -destination 'platform=iOS Simulator,name=iPhone 15' build

# Use included script for common options
./scripts/run_tests.sh --parallel --coverage

Format and Lint

# Use included script
./scripts/format_and_lint.sh Sources/

# Check mode (CI)
./scripts/format_and_lint.sh --check

Simulator Management

# Use included script
./scripts/simulator.sh list
./scripts/simulator.sh boot "iPhone 15"
./scripts/simulator.sh screenshot
./scripts/simulator.sh dark

Core Workflows

Building iOS Apps

# Debug build for simulator
xcodebuild -workspace App.xcworkspace -scheme App \
    -destination 'platform=iOS Simulator,name=iPhone 15' \
    build

# Release archive
xcodebuild archive \
    -workspace App.xcworkspace -scheme App \
    -archivePath ./build/App.xcarchive \
    -configuration Release

# Export IPA (use templates from assets/ExportOptions/)
xcodebuild -exportArchive \
    -archivePath ./build/App.xcarchive \
    -exportPath ./build/export \
    -exportOptionsPlist assets/ExportOptions/app-store.plist

Testing

# All tests
xcodebuild test -workspace App.xcworkspace -scheme App \
    -destination 'platform=iOS Simulator,name=iPhone 15'

# Specific test
xcodebuild test -only-testing:AppTests/MyTestClass/testMethod

# With coverage
xcodebuild test -enableCodeCoverage YES \
    -resultBundlePath ./TestResults.xcresult

App Installation

# Install on booted simulator
xcrun simctl install booted ./Build/Products/Debug-iphonesimulator/App.app

# Launch
xcrun simctl launch booted com.company.app

Official Documentation

Reference Links (for humans)

These are Apple's official documentation links for manual browsing:

| Resource | URL | |----------|-----| | Swift Documentation | https://developer.apple.com/documentation/swift | | SwiftUI | https://developer.apple.com/documentation/swiftui | | Swift Concurrency | https://developer.apple.com/documentation/swift/concurrency | | Swift Testing | https://developer.apple.com/documentation/testing |

Note: Apple's documentation sites are JavaScript SPAs and cannot be fetched programmatically with WebFetch.

WebFetch-Compatible Sources

Use these GitHub-based sources for live documentation fetching:

| Resource | URL | |----------|-----| | Swift Testing | https://github.com/apple/swift-testing | | Swift Evolution Proposals | https://github.com/apple/swift-evolution/tree/main/proposals | | Swift Compiler Docs | https://github.com/apple/swift/tree/main/docs | | Swift Standard Library | https://github.com/apple/swift/tree/main/stdlib | | Swift Async Algorithms | https://github.com/apple/swift-async-algorithms | | Swift Collections | https://github.com/apple/swift-collections |

When to Fetch Documentation

Use WebFetch to retrieve documentation from GitHub in these situations:

  1. Swift Testing: When you need details on @Test, #expect, #require, traits, or parameterized tests
  2. Swift Evolution: When checking accepted proposals for new language features
  3. Framework Details: When implementing features from Apple's open-source Swift packages
  4. Uncertainty: When you're unsure about current API patterns or best practices

How to fetch: Use WebFetch with GitHub URLs:

  • README: https://github.com/apple/swift-testing
  • Raw markdown: https://raw.githubusercontent.com/apple/swift-testing/main/README.md
  • Specific docs: https://github.com/apple/swift-evolution/blob/main/proposals/0409-access-level-on-imports.md

Example prompt for WebFetch: "Extract the main features, macros, and usage examples from this documentation"

Reference Files

Detailed documentation for specific topics:

| Topic | File | |-------|------| | SwiftUI patterns | [references/swiftui-patterns.md](references/swiftui-patterns.md) | | Testing patterns | [references/testing-patterns.md](references/testing-patterns.md) | | Swift 6 concurrency | [references/concurrency.md](references/concurrency.md) | | Architecture patterns | [references/architecture.md](references/architecture.md) | | Best practices | [references/best-practices.md](references/best-practices.md) | | Swift Package Manager | [references/spm.md](references/spm.md) | | xcodebuild commands | [references/xcodebuild.md](references/xcodebuild.md) | | Simulator control | [references/simctl.md](references/simctl.md) | | Code signing | [references/code-signing.md](references/code-signing.md) | | CI/CD setup | [references/cicd.md](references/cicd.md) | | Troubleshooting | [references/troubleshooting.md](references/troubleshooting.md) |

Included Scripts

| Script | Purpose | |--------|---------| | scripts/new_package.sh | Create new Swift package with config files | | scripts/run_tests.sh | Run tests with common options | | scripts/format_and_lint.sh | Format and lint Swift code | | scripts/simulator.sh | Quick simulator management |

Asset Templates

| Asset | Purpose | |-------|---------| | assets/Package.swift.template | Swift package template | | assets/.swiftformat | SwiftFormat configuration | | assets/.swiftlint.yml | SwiftLint configuration | | assets/ExportOptions/ | Archive export plist templates |

Quick Reference

Essential Commands

| Task | Command | |------|---------| | Build package | swift build | | Build release | swift build -c release | | Run tests | swift test | | Update deps | swift package update | | List simulators | xcrun simctl list devices | | Boot simulator | xcrun simctl boot "iPhone 15" | | Install app | xcrun simctl install booted ./App.app | | Format code | swiftformat . | | Lint code | swiftlint |

Common Destinations

# iOS Simulator
-destination 'platform=iOS Simulator,name=iPhone 15'

# macOS
-destination 'platform=macOS'

# Generic iOS (for archives)
-destination 'generic/platform=iOS'
Compartilhar X LinkedIn