- Home
- Skills
- Rshankras
- Claude Code Apple Skills
- Analytics Setup
analytics-setup_skill
- Swift
56
GitHub Stars
2
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill rshankras/claude-code-apple-skills --skill analytics-setup- analytics-patterns.md7.0 KB
- SKILL.md4.6 KB
Overview
This skill generates a protocol-based analytics infrastructure for Swift apps, enabling easy swapping between providers like TelemetryDeck, Firebase, and Mixpanel. It scaffolds core protocol files, provider implementations, and SwiftUI environment integration so tracking calls remain stable across provider changes. Use it to add telemetry, track events, and support privacy-friendly or test-friendly analytics modes.
How this skill works
The generator creates a stable AnalyticsService protocol and an AnalyticsEvent enum to centralize event definitions. It then adds provider-specific implementations (TelemetryDeckAnalytics, FirebaseAnalytics, MixpanelAnalytics) plus a NoOpAnalytics for testing or privacy modes. For SwiftUI projects it also produces an EnvironmentKey to inject the chosen analytics service into views, and it suggests where to place files based on common project layouts.
When to use it
- When adding analytics to a Swift app for the first time
- When you want to swap telemetry providers without changing app code
- When you need privacy-friendly or testable (NoOp) analytics
- When tracking events, screen views, lifecycle events, or errors
- When preparing provider-specific configuration (e.g., Firebase plist)
Best practices
- Keep AnalyticsService and AnalyticsEvent stable; add new events to AnalyticsEvent only
- Prefer TelemetryDeck for privacy-focused deployments and NoOpAnalytics for tests and previews
- Register provider once in App init and inject via SwiftUI environment or DI container
- Store provider credentials and config outside source (Secrets, plist) and avoid hardcoding
- Track high-level, product-relevant events and include contextual properties for analysis
Example use cases
- Scaffold TelemetryDeckAnalytics to enable privacy-first telemetry with minimal code changes
- Add FirebaseAnalytics implementation and the required GoogleService-Info.plist for full feature tracking
- Create NoOpAnalytics for unit tests and SwiftUI previews to avoid external dependencies
- Swap providers by changing one line in App.swift to move from TelemetryDeck to Mixpanel
- Generate AnalyticsEvent entries for app lifecycle, screen views, button taps, and error reporting
FAQ
Add the new provider implementation (or generate it) and change the single provider assignment in your App entry to the new AnalyticsService instance.
Can I use NoOpAnalytics in production?
NoOpAnalytics is intended for testing and privacy modes; use a real provider in production unless you intentionally want to disable telemetry.
Where does this place generated files?
It suggests common locations: Sources/Analytics/, App/Analytics/, or a top-level Analytics/ folder depending on your project layout.