agentsclimarketplace

Release

Skill launch52-ai/flutter-template/.claude/skills/release

Template for Flutter mobile applications.

Install
npx -y skills add launch52-ai/flutter-template --skill release

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Prepare Flutter apps for App Store and Play Store release. Use when setting up Android signing, iOS certificates, app icons, splash screens, or preparing for production deployment. Covers keystore creation, Xcode signing, store setup, and release builds.

SKILL.md

5.9 KB, as published. Nobody here has run it

Release - App Store & Play Store Preparation

Prepare Flutter apps for production release. Handles signing, icons, splash screens, and store setup.

When to Use This Skill

  • Setting up Android signing (keystore, key.properties)
  • Configuring iOS signing (certificates, provisioning profiles)
  • Creating app icons for iOS and Android
  • Setting up splash screens
  • Preparing for App Store Connect or Google Play Console
  • Verifying release readiness
  • Building release APK/AAB/IPA

Manual vs CI/CD Release

ApproachUse WhenSigning
Manual (this skill)First release, small teamLocal keystore, Xcode
CI/CD (/ci-cd)Regular releases, teamsGitHub Secrets, Fastlane

Recommendation: Start with manual release. Set up CI/CD when you need automation.

Quick Reference

Platform Requirements

PlatformSigningStoreBuild Command
AndroidKeystore + key.propertiesPlay Consoleflutter build appbundle --release
iOSXcode Team + ProvisioningApp Store Connectflutter build ipa --release

Commands

# Audit release readiness
dart run .claude/skills/release/scripts/check.dart

# Build release
flutter build appbundle --release  # Android
flutter build ipa --release        # iOS
check.dart OptionPurpose
--platform android/iosAudit specific platform only
--fixAuto-fix .gitignore patterns
--checklistGenerate markdown checklist
--capabilitiesDetect required iOS capabilities
--keytool-commandGenerate keystore creation command

Workflow

1. Audit Current State

dart run .claude/skills/release/scripts/check.dart

Identifies: Missing keystore, unsigned iOS, missing icons, uncommitted .env files.

2. Create Assets

See assets-guide.md:

  • App icon: 1024x1024 PNG (no transparency for iOS)
  • Splash screen: Configure flutter_native_splash

3. Configure Android Signing

See android-guide.md:

  1. Generate keystore
  2. Create key.properties (DO NOT COMMIT)
  3. Update build.gradle.kts
  4. Create proguard-rules.pro

4. Configure iOS Signing

See ios-guide.md:

  1. Open Xcode
  2. Select Team
  3. Configure capabilities
  4. Create App ID on Apple Developer

5. Store Setup

See platform guides:

6. Build & Test Release

# Android
flutter build appbundle --release

# iOS
flutter build ipa --release

7. Final Verification

See checklist.md for comprehensive pre-release checklist.

File Structure

After release preparation:

android/key.properties          # Signing config (DO NOT COMMIT)
android/app/build.gradle.kts    # With signing config
android/app/proguard-rules.pro  # R8 rules
ios/Runner.xcworkspace          # With signing configured
assets/icons/app_icon.png       # 1024x1024 source icon
pubspec.yaml                    # flutter_native_splash config
.gitignore                      # Must include key.properties, *.jks

Security Checklist

Critical files that must NEVER be committed:

FileContainsGitignore Pattern
key.propertiesKeystore passwordsandroid/key.properties
*.jks / *.keystoreSigning keys*.jks / *.keystore
.envAPI keys, secrets.env / .env.*
*.p8Apple private keys*.p8
google-services.jsonFirebase config (optional)Varies

Checklist

Assets:

  • App icon 1024x1024 PNG (no transparency for iOS)
  • Splash screen configured
  • Screenshots for store listing

Android:

  • Keystore created and backed up securely
  • key.properties configured (not committed)
  • build.gradle.kts has signing config
  • proguard-rules.pro created
  • flutter build appbundle --release succeeds

iOS:

  • Xcode Team selected
  • App ID created on Apple Developer
  • Provisioning profile configured
  • flutter build ipa --release succeeds

Store:

  • App Store Connect app created
  • Play Console app created
  • Privacy policy URL ready
  • Store listing content prepared

Security:

  • .gitignore has all sensitive files
  • No secrets committed to repository
  • Keystore backed up to secure location

Guides

GuideUse For
android-guide.mdKeystore, signing, Play Store, Data Safety
ios-guide.mdXcode signing, Privacy Manifest, ATT, App Store
assets-guide.mdApp icons (incl. themed), splash screens
version-guide.mdVersion format, store requirements
checklist.mdComprehensive pre-release checklist

Templates

Ready-to-use files in templates/:

TemplatePurpose
PrivacyInfo.xcprivacyiOS Privacy Manifest (iOS 17+)
proguard-rules.proAndroid R8/ProGuard rules

Related Skills

  • /ci-cd - Automated builds and deployment pipelines
  • /testing - Ensure tests pass before release
  • /a11y - Accessibility compliance for store approval

Common Issues

IssueSolution
"Keystore was tampered with"Verify password in key.properties
"No signing certificate"Xcode > Preferences > Accounts > refresh
ProGuard errorsAdd keep rules to proguard-rules.pro
Icons don't updateRun flutter clean then rebuild

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.