app-store
App Store optimization and marketing skills for descriptions, screenshots, keywords, review responses, and comprehensive promotional strategy. Use when user…
Generates user-facing usage statistics, activity summaries, and personalized insights dashboards (weekly recaps, year-in-review, Spotify Wrapped-style). Use when user wants to show usage stats, activity insights, or shareable recap screens. Different from analytics-setup which
$ npx -y skills add rshankras/claude-code-apple-skills --skill usage-insights --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/usage-insightsContext preview
The summary Claude sees to decide when to auto-load this skill.
Generates user-facing usage statistics, activity summaries, and personalized insights dashboards (weekly recaps, year-in-review, Spotify Wrapped-style). Use when user wants to show usage stats, activity insights, or shareable recap screens. Different from analytics-setup which
name: usage-insights description: Generates user-facing usage statistics, activity summaries, and personalized insights dashboards (weekly recaps, year-in-review, Spotify Wrapped-style). Use when user wants to show usage stats, activity insights, or shareable recap screens. Different from analytics-setup which sends data to a backend — this shows insights to the USER on-device. allowed-tools: [Read, Write, Edit, Glob, Grep, Bash, AskUserQuestion] last_verified: 2026-07-16 review_by: 2027-06-22 os_version: iOS 27 / macOS 27
Generate a production usage insights system that records user activity events with SwiftData, computes personalized insights (streaks, most active day, top categories), and displays them in a dashboard with insight cards, period pickers, trend indicators, and optional shareable recap screens.
Use this skill when the user:
Search for existing usage tracking or insights code:
Glob: **/*UsageEvent*.swift, **/*Insight*.swift, **/*Recap*.swift, **/*ActivityLog*.swift Grep: "UsageEvent" or "InsightCalculator" or "activitySummary" or "SwiftData" and "event"
If existing analytics/tracking found:
Check for SwiftData usage:
Grep: "import SwiftData" or "@Model" or "ModelContainer"
If SwiftData already in use:
If no SwiftData:
Ask user via AskUserQuestion:
1. **Insight period?**
2. **Visualization style?**
3. **Include shareable recap card?**
4. **Data source?**
Read `templates.md` for production Swift code.
Generate these files: 1. `UsageEvent.swift` — SwiftData `@Model` for recording user activity events 2. `InsightResult.swift` — Model for computed insights (title, value, trend, visualization type)
3. `InsightCalculator.swift` — Pure functions that aggregate events into insights
4. `InsightsDashboardView.swift` — Main dashboard with grid of insight cards and period picker 5. `InsightCardView.swift` — Individual insight card with icon, value, trend indicator, sparkline
Based on configuration:
Check project structure:
After generation, provide:
UsageInsights/ ├── UsageEvent.swift # SwiftData @Model for activity events ├── InsightResult.swift # Computed insight model ├── InsightCalculator.swift # Aggregation engine ├── InsightsDashboardView.swift # Dashboard with period picker ├── InsightCardView.swift # Individual insight card ├── UsageRecapView.swift # Shareable recap (optional) └── UsageEventRecorder.swift # Event recording helper (optional)
**Add ModelContainer (if not already present):**
@main
struct MyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
.modelContainer(for: [UsageEvent.self])
}
}**Record events from anywhere in the app:**
struct TaskDetailView: View {
@Environment(\.modelContext) private var modelContext
@State private var recorder: UsageEventRecorder?
var body: some View {
Button("Complete Task") {
completeTask()
recorder?.record(
.taskCompleted,
metadata: ["category": "work", "priority": "high"]
)
}
.onAppear {
recorder = UsageEventRecorder(modelContext: modelContext)
}
}
}**Show the insights dashboard:**
NavigationLink("My Insights") {
InsightsDashboardView()
}**Show a weekly recap:**
struct WeeklyRecapSheet: View {
@Environment(\.modelContext) priA collection of Claude Code skills for iOS, macOS, watchOS, visionOS, and Apple platform development. These skills help you plan and build apps, maintain code quality, ensure HIG compliance, and guide you from idea to App Store.
Repo: rshankras/claude-code-apple-skills
App Store optimization and marketing skills for descriptions, screenshots, keywords, review responses, and comprehensive promotional strategy. Use when user…
Privacy-preserving ad measurement with AdAttributionKit (SKAdNetwork's successor) — install and re-engagement attribution, conversion-value strategy under…
Generate compelling App Store descriptions that convert browsers into users. Use when writing initial descriptions, improving existing copy, or drafting…
Apple Search Ads campaign strategy for indie developers — paid acquisition, keyword bidding, budget planning, and ROAS optimization. Use when user asks about…
Take a one-time in-app purchase from MISSING_METADATA to READY_TO_SUBMIT in App Store Connect — set its price schedule and localized display name/description…
Optimize app title, subtitle, and keywords for maximum App Store discoverability. Use when launching a new app, improving search rankings, entering new…