Agent skill · marketing growth · aradotso

ios-marketing-capture-automation

Automate multi-locale marketing screenshot capture for SwiftUI iOS apps with in-app capture system, demo data seeding, and element rendering.

Why this skill is useful

Adds an executable script for automated marketing screenshot capture across multiple locales that the AI cannot generate on its own.

What it needs

Requires python, xcode installed locally. About 9k tokens when loaded. Last updated 2026-08-05. 8 stars on the source repository.

What this skill does

iOS Marketing Capture Automation Skill by ara.so — Marketing Skills collection. What This Skill Does This skill helps you automate marketing screenshot capture for SwiftUI iOS apps by building an in-app capture system that: Adds a #if DEBUG-gated capture system with zero production footprint Seeds deterministic demo data so screenshots look populated and polished Navigates to each screen programmatically via step-based coordinator Snapshots full window including status bar, safe area, and presented sheets Renders isolated elements (cards, widgets, charts) via ImageRenderer at 3x with transparency Loops every locale automatically — one build, N relaunches with -AppleLanguages Works with any SwiftUI navigation: TabView, NavigationStack, NavigationSplitView Installation Using npx skills (recommended) Global install (available across all projects): Agent-specific install: Manual installation Requirements Checklist Before starting, verify: ✅ Xcode 16+ (synchronized folder groups support) ✅ iOS 17+ deployment target (for ImageRenderer, @Observable) ✅ A simulator runtime matching target iOS version ✅ Python 3 (for JSON parsing in shell script) ✅ SwiftUI-based app with defined navigation structure Core Concepts In-App Capture (Not XCUITest) This approach uses in-app capture instead of XCUITest/Fastlane because: No test target needed — many projects lack one, adding means fragile pbxproj edits Direct access — ViewModels, SwiftData, ImageRenderer, UIWindow.drawHierarchy Faster — xcodebuild build once, then simctl launch per locale Element renders require it — ImageRenderer must run inside app process Step-Based Coordinator Each screenshot is a self-contained CaptureStep: Implementation Pattern 1. Gather Requirements When user asks to capture screenshots, collect: 1. Screens to capture — exact tab names or navigation paths 2. Elements to render — cards, widgets, charts to isolate 3. Locales — explicit list or "all locales in xcstrings" 4. Device — simulator model (e.g. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills aradotso/ios-marketing-capture-automation

View the source on GitHub

Browse the @skills marketplace