Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Screenshot Guidelines

ASecurity

Detects screenshot submission issues including launch-screen-only assets and cross-platform UI references, enforcing Guideline 2.3.3 which requires screenshots to show the app in actual use.

18 stars
0 votes
0 copies
0 views
Added 9/20/2026
developmentgoswiftbashreactperformance

Security Analysis

A100/100

Scanned 9/20/2026

Install to Claude Code

$npx -y skills add cruisediary/apple-app-review-skills --skill screenshot-guidelines --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Screenshot Guidelines?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Screenshot Guidelines
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/cruisediary-screenshot-guidelines/badge)](https://www.skillsdirectory.com/skills/cruisediary-screenshot-guidelines)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: screenshot-guidelines
description: >-
  Detects screenshot submission issues including launch-screen-only assets and cross-platform UI references, enforcing Guideline 2.3.3 which requires screenshots to show the app in actual use.
---

# Skill: Screenshot Guidelines
<!-- SEO: App Store screenshots splash screen launch screen Android UI actual app UI Guideline 2.3.3 2.3.10 iOS metadata rejection -->

## Purpose
Detects screenshot submission issues including launch-screen-only assets and cross-platform UI references, enforcing Guideline 2.3.3 which requires screenshots to show the app in actual use.

## Apple Guideline
- **Primary:** 2.3.3 — Performance: Accurate Metadata — Screenshots
- **Related:** 2.3.10
- **Reference:** `references/guidelines/2-performance.md`

## Real-World Rejection Cases
- **Case:** All 5 screenshots showed splash screen / app icon — reviewer couldn't see actual UI — rejected
  **Source:** Apple Developer Forums (Guideline 2.3.3 enforcement)
  **Root cause:** Screenshots must show the app in actual use; title art / login screens alone are not sufficient — reviewers expect to see core features and UI in the screenshots

- **Case:** Screenshots contained Android UI elements (floating action button) — rejected under 2.3.10
  **Source:** mobiloud.com/blog/avoid-app-rejected-apple
  **Root cause:** App Store metadata must not reference other platforms — Android-specific UI components visible in screenshots signal a cross-platform port and may mislead users

## Trigger
Invoke on any iOS/macOS project before App Store submission to flag screenshot-related metadata issues.

## Inputs
| Name | Type | Default | Description |
|------|------|---------|-------------|
| `project_root` | path | cwd | iOS/macOS project root |
| `shared_context` | object | nil | Pre-collected context from appstore-full-audit Phase 1 |

## Actions

### Phase 1: Context Collection
*Skip this phase if `shared_context` is provided.*

1. `Glob` `**/LaunchScreen*` — locate launch screen files.
2. `Glob` `**/*.xcassets` — locate asset catalogs.
3. `Glob` `**/fastlane/screenshots/**` or `**/screenshots/**` — locate screenshot directories if using Fastlane or manual screenshot folders.
4. `Glob` `**/metadata/**` or `**/*.md` — locate description/metadata text files for platform reference checks.

### Phase 2: Checks

1. **Launch screen in screenshots directory**
   `Glob` `**/LaunchScreen*` — if only launch screen storyboard/xib assets exist and no distinct screenshot assets found in screenshot directories → 🟡 MEDIUM. Indicates screenshots may not have been updated from default assets. Cannot fully verify without manual App Store Connect review.

2. **Android platform references in metadata**
   `Grep` pattern `"Android"|"Google Play"|"Play Store"|"APK"|"floating action button"` in any description, metadata, or store listing text files (`**/*.txt`, `**/*.md` in metadata/fastlane directories).
   Any match → 🟠 HIGH. App Store screenshots and metadata must not reference Android or Google Play.

3. **Manual screenshot verification reminder**
   Always output a LOW best-practice item reminding the developer to manually verify App Store Connect screenshots. Screenshot content cannot be fully validated programmatically.

### Phase 3: Output
Collect all findings from Phase 2 and build the prioritised findings list below. Include file paths and line numbers. Omit tiers with no findings.

## Output Format

```
## Screenshot Guidelines — Findings

### 🔴 CRITICAL — Guaranteed rejection
- [ ] TODO: <exact actionable step> — `file:line` — Guideline 2.3.3

### 🟠 HIGH — Very likely rejection
- [ ] TODO: Remove "Android" / "Google Play" reference from App Store metadata description — `fastlane/metadata/en-US/description.txt:12` — Guideline 2.3.10

### 🟡 MEDIUM — Possible rejection
- [ ] TODO: Verify screenshots in App Store Connect are not all launch/splash screens — upload screenshots showing core app features and actual UI — Guideline 2.3.3

### 🟢 LOW — Best practice
- [ ] TODO: Manually review all 5 App Store screenshots before submission — verify each shows a distinct in-app feature, not login screen or onboarding only
- [ ] TODO: Ensure screenshots match the device frame (iPhone 6.5", 5.5", iPad 12.9") required by App Store Connect — mismatched sizes cause upload errors
```

## Tools Used
`Glob`, `Grep`, `Read`

## Constraints
- Read-only. No file edits.
- No network calls.
- Skip Phase 1 if `shared_context` is provided by orchestrating agent.
- Works on Swift, Objective-C, React Native, Flutter projects.

## Quick Commands

Run these in your project root to check manually:

```bash
# Check for Android references in any file
!grep -rn "Android\|Google Play\|Play Store" . --include="*.swift" --include="*.md" --include="*.strings"

# List launch screen assets (should not be only screenshots)
!find . -name "LaunchScreen*" -not -path "*/Pods/*"
```

## Swift Anti-Pattern Reference
`examples/swift/QualityPatterns.swift`

## Detection Steps

1. **Find target files**
   - Glob: `**/fastlane/screenshots/` (Fastlane projects), `**/*.xcassets`, `**/AppStoreConnect/`
   - Note: Screenshots are often managed outside the repo (Xcode Organizer, App Store Connect web). If no local screenshot directory is found, flag for manual verification rather than treating as a definitive absence.

2. **Search for rejection patterns**
   - If `fastlane/screenshots/` exists: check it contains image files for `en-US` locale
   - Grep `LaunchScreen\|Splash\|splash\|launch_screen` in screenshot filenames — launch screen used as screenshot
   - Check for required App Store screenshot sizes: `1290x2796` (6.7" iPhone 15 Pro Max), `2048x2732` (iPad Pro 12.9")

3. **Determine verdict**
   - No screenshots directory or empty → 🟠 HIGH (Guideline 2.3.3)
   - Screenshots show splash/launch screen only → 🟠 HIGH
   - Screenshots missing required device sizes → 🟠 HIGH
   - Screenshots show actual in-app UI at required sizes → 🟢 pass

4. **Report**
   - Missing screenshot sizes or splash-only screenshots
   - Fix: Capture screenshots showing core app UI on iPhone 15 Pro Max and iPad Pro 12.9"; use Fastlane snapshot for automation

Attribution

cruisediarycruisediary
View sourceMore from cruisediary →
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Related Skills

Browser Extension Developer

Use this skill when developing or maintaining browser extension code in the `browser/` directory, including Chrome/Firefox/Edge compatibility, content scripts, background scripts, or i18n updates.

284722 votes

Seo Optimizer

SEO optimization with keyword analysis, readability assessment, technical validation, content quality. Use for search rankings, blog posts, content audits, or encountering keyword density, readability scores, meta tags, schema markup errors.

2192 votes

Google Official Seo Guide

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

1862 votes

Tanstack Start

Build a full-stack TanStack Start app on Cloudflare Workers from scratch — SSR, file-based routing, server functions, D1+Drizzle, better-auth, Tailwind v4+shadcn/ui. Use whenever the user mentions TanStack Start, asks to scaffold a full-stack Cloudflare app with SSR, wants an SSR dashboard, or asks for a React 19 + Cloudflare Workers app with file-based routing and server functions — even if they don't name TanStack Start specifically. No template repo — Claude generates every file fresh per ...

9881 votes

Pentest

PTES-aligned adversarial security audit for backend, frontend, and mobile applications. Produces a CVSS-scored Hacker Report with verified PoCs and phased remediation.

5491 votes
View all in development →