# ============================================================
# Xcode
# ============================================================

# User-specific Xcode settings
xcuserdata/
*.xcuserstate
*.xcscmblueprint

# Xcode build products
build/
Build/
DerivedData/
*.hmap

# Xcode archives
*.xcarchive

# Xcode playgrounds
timeline.xctimeline
playground.xcworkspace

# Old Xcode per-user files
*.mode1v3
*.mode2v3
*.perspectivev3
*.pbxuser

# Keep default/shared project files if encountered
!default.mode1v3
!default.mode2v3
!default.perspectivev3
!default.pbxuser


# ============================================================
# Swift Package Manager
# ============================================================

.build/
.swiftpm/

# Keep Package.resolved.
# For an application such as SonarDesk, dependency versions
# should normally be reproducible.
!Package.resolved


# ============================================================
# CocoaPods
# ============================================================

# Uncomment this if you intentionally do NOT commit Pods.
# Pods/

# CocoaPods local workspace state
*.xcworkspace/xcuserdata/


# ============================================================
# Carthage
# ============================================================

Carthage/Build/


# ============================================================
# Xcode / Swift generated files
# ============================================================

*.dSYM
*.dSYM.zip
*.ipa

# Swift compiler/module output
*.swiftmodule
*.swiftdoc
*.swiftsourceinfo


# ============================================================
# Code coverage / testing
# ============================================================

*.xccovarchive
*.xccovreport
*.profdata
*.gcda
*.gcno

# Test result bundles
*.xcresult


# ============================================================
# macOS
# ============================================================

.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r characters
Icon

# Thumbnails
._*

# Files that may appear on external disks
.Spotlight-V100
.Trashes
.fseventsd


# ============================================================
# Signing / Certificates / Provisioning
# ============================================================

# Never commit private signing identities
*.p12
*.pfx
*.cer
*.key
*.pem

# Provisioning profiles
*.mobileprovision
*.provisionprofile


# ============================================================
# Secrets / Environment
# ============================================================

.env
.env.*
!.env.example

*.secrets
Secrets.xcconfig
Local.xcconfig

# API keys / credentials
credentials.json
secrets.json


# ============================================================
# Distribution / Release output
# ============================================================

dist/
release/
releases/

*.dmg
*.pkg
*.zip


# ============================================================
# Temporary / backup files
# ============================================================

*.tmp
*.temp
*.bak
*.swp
*.swo
*~
~$*


# ============================================================
# IDEs / Editors
# ============================================================

.idea/
.vscode/

# JetBrains
*.iml


# ============================================================
# Logs
# ============================================================

*.log
logs/


# ============================================================
# Sonar / Analysis tools
# ============================================================

.sonar/
.scannerwork/
sonar-scanner.log


# ============================================================
# IMPORTANT — DO NOT IGNORE
# ============================================================

# These should remain committed:
#
# *.xcodeproj/project.pbxproj
# *.xcworkspace/contents.xcworkspacedata
# *.xcassets
# *.entitlements
# Info.plist
# Package.swift
# Package.resolved
# Shared Xcode schemes
#
# Do NOT add broad rules such as:
# *.xcodeproj
# *.xcworkspace
# *.xcassets
# *.entitlements


.DS_Store

**/.DS_Store

# Xcode per-user state

xcuserdata/

*.xcuserstate

UserInterfaceState.xcuserstate

# Xcode build output

DerivedData/

build/

.build/