$npx -y skills add rshankras/claude-code-apple-skills --skill in-app-eventsGenerates In-App Event metadata templates for App Store Connect — event names, descriptions, badge types, image specs, and deep link configuration. Use when creating events for App Store visibility, engagement campaigns, or seasonal promotions.
| 1 | # In-App Events Generator |
| 2 | |
| 3 | Generate complete In-App Event metadata ready for App Store Connect upload, including event cards, descriptions, deep link configuration, and promotional image specifications. |
| 4 | |
| 5 | ## When This Skill Activates |
| 6 | |
| 7 | Use this skill when the user: |
| 8 | - Asks to "create in-app events" or "add App Store events" |
| 9 | - Mentions "event cards" or "App Store event metadata" |
| 10 | - Wants to create seasonal campaigns or challenges on the App Store |
| 11 | - Asks about "event badges" or "event promotion" |
| 12 | - Mentions driving engagement through App Store events |
| 13 | |
| 14 | ## How In-App Events Work |
| 15 | |
| 16 | In-App Events appear on: |
| 17 | - Your product page (up to 5 events visible) |
| 18 | - Search results (when relevant to search term) |
| 19 | - Editorial features and collections |
| 20 | - Personalized recommendations |
| 21 | |
| 22 | Events are visible to ALL users — including people who haven't downloaded your app. This makes them a powerful discovery and re-engagement tool. Users who opt in also get an App Store notification when the event starts. |
| 23 | |
| 24 | ### Rules & Limits (per Apple) |
| 25 | |
| 26 | | Rule | Value | |
| 27 | |------|-------| |
| 28 | | Event duration | 15 minutes to 31 days | |
| 29 | | Publish ahead of start | Up to 14 days early — the card shows the start time | |
| 30 | | Concurrent limits | 10 approved / 5 published simultaneously across storefronts — ASC blocks submission beyond either | |
| 31 | | Per-country schedules | Custom start/end per country, within ±48 hours of the default schedule | |
| 32 | | Review time | ~24 hours typical | |
| 33 | | Past-event URL | Stays live for 30 days after the event ends | |
| 34 | | Card media | One image, or a looping video ≤30 seconds | |
| 35 | | Submission conflict | Marketing role can't submit an event while an app version is in submission | |
| 36 | | Analytics | Event analytics appear only after ≥5 downloads from the event | |
| 37 | |
| 38 | ## Configuration Questions |
| 39 | |
| 40 | Ask user via AskUserQuestion: |
| 41 | |
| 42 | 1. **Event type** |
| 43 | - Challenge (skill-based competition or goal) |
| 44 | - Competition (leaderboard or ranked event) |
| 45 | - Live Event (real-time participation) |
| 46 | - Special Event (limited-time content or feature) |
| 47 | - Major Update (significant new version) |
| 48 | - New Season (seasonal content refresh) |
| 49 | - Premiere (first-time content debut) |
| 50 | |
| 51 | 2. **Event purpose** |
| 52 | - Drive new downloads (acquisition) |
| 53 | - Re-engage lapsed users (re-engagement) |
| 54 | - Increase active user engagement (retention) |
| 55 | - Promote new content/feature (awareness) |
| 56 | |
| 57 | 3. **Number of events to create** |
| 58 | - Single event |
| 59 | - Event series (3-5 related events) |
| 60 | - Seasonal calendar (12-month plan) |
| 61 | |
| 62 | ## Generation Process |
| 63 | |
| 64 | ### Step 1: Gather Event Details |
| 65 | |
| 66 | For each event, collect: |
| 67 | - Event concept and theme |
| 68 | - Start and end dates |
| 69 | - Target audience (new users, existing users, lapsed users) |
| 70 | - Related app feature or content |
| 71 | |
| 72 | ### Step 2: Generate Metadata |
| 73 | |
| 74 | For each event, produce: |
| 75 | 1. **Event Reference Name** (64 characters max, internal, not shown to users) |
| 76 | 2. **Event Badge** (one of the 7 badge types) |
| 77 | 3. **Event Name** (30 characters max, shown on event card) |
| 78 | 4. **Short Description** (50 characters max, shown on event card) |
| 79 | 5. **Long Description** (120 characters max, shown on event detail page) |
| 80 | 6. **Event Media Specs** (image/video requirements) |
| 81 | 7. **Deep Link** (where users land when they tap the event) |
| 82 | |
| 83 | ### Step 3: Generate Image Specs |
| 84 | |
| 85 | Provide exact image specifications for event cards: |
| 86 | - **Event Card Image**: 1080 x 1920 pixels (portrait) or 1920 x 1080 (landscape) |
| 87 | - **Format**: PNG or JPEG |
| 88 | - **Safe zones**: Keep critical content within center 80% |
| 89 | - **No text or logos in card art** (per Apple) — the card already renders your event name and app name over it; preview the image for cropping across placements |
| 90 | |
| 91 | ### Step 4: Produce Output Document |
| 92 | |
| 93 | Write a markdown document with all metadata ready for copy/paste into App Store Connect. |
| 94 | |
| 95 | ## Event Badge Reference |
| 96 | |
| 97 | | Badge | Use For | Examples | |
| 98 | |-------|---------|---------| |
| 99 | | **Challenge** | Goal-based activities users can complete | "30-Day Fitness Challenge", "Photography Week" | |
| 100 | | **Competition** | Ranked or scored events against other users | "Weekly Leaderboard", "Speed Run Contest" | |
| 101 | | **Live Event** | Real-time events at a specific time | "Live Q&A with Creator", "Launch Party" | |
| 102 | | **Special Event** | Limited-time features, offers, or content | "Holiday Collection", "Anniversary Sale" | |
| 103 | | **Major Update** | Significant new app version | "Version 3.0 — Complete Redesign" | |
| 104 | | **New Season** | Seasonal content refreshes | "Winter Season", "Chapter 3" | |
| 105 | | **Premiere** | First-time content or feature debut | "Introducing Dark Mode", "New Game Mode" | |
| 106 | |
| 107 | **The badge-fit rule** (per Apple): if none of the badges fits what you're promoting, it sh |