Complete solution (100% reference)
index.html- Main HTML pagescript.js- JavaScript logicstyles.css- Styling and layoutpackage.json- Dependenciessetup.sh- Setup scriptREADME.md- Instructions (below)💡 Download the ZIP, extract it, and follow the instructions below to get started!
Complete EAS Build configuration template for deploying React Native apps to iOS App Store and Google Play Store.
This template provides a 65-70% complete deployment configuration. You'll customize the remaining 30-35% for your specific app.
# Install packages
npm install --legacy-peer-deps
# Install EAS CLI globally
npm install -g eas-cli
# Login to Expo
eas login
# Configure EAS project
eas build:configure
Replace template assets with your designs:
# Required assets:
assets/icon.png # 1024x1024px PNG
assets/splash.png # 2048x2732px PNG
assets/adaptive-icon.png # 1024x1024px PNG (Android)
# Use the asset generator script:
./scripts/generate-assets.sh path/to/your/icon.png path/to/your/splash.png
Design Requirements:
Update these fields in app.json:
{
"expo": {
"name": "YourAppName", // TODO #2.1
"slug": "your-app-name", // TODO #2.2
"version": "1.0.0", // TODO #2.3
"description": "Your app description", // TODO #2.4
"splash": {
"backgroundColor": "#4A90E2" // TODO #2.5
},
"ios": {
"bundleIdentifier": "com.yourname.yourapp" // TODO #2.6
},
"android": {
"package": "com.yourname.yourapp", // TODO #2.8
"adaptiveIcon": {
"backgroundColor": "#4A90E2" // TODO #2.7
}
}
}
}
Important:
com.yourname.appnameCreate production builds and submit to app stores:
# Build for both platforms
eas build --profile production --platform all
# Or build separately:
eas build --profile production --platform ios
eas build --profile production --platform android
# Submit to app stores:
eas submit --platform ios
eas submit --platform android
Follow docs/DEPLOYMENT_GUIDE.md for complete step-by-step instructions.
DEPLOYMENT_GUIDE.md - Complete deployment workflow
APP_STORE_CHECKLIST.md - Submission requirements
PRIVACY_POLICY.md - Privacy policy template
This template includes three build profiles:
eas build --profile development --platform ios
eas build --profile preview --platform android
eas build --profile production --platform all
activity-12-deploy-ready/
├── App.js # Demo app (100% complete)
├── app.json # App config (80% complete - needs customization)
├── eas.json # EAS config (100% complete)
├── package.json # Dependencies (100% complete)
├── .gitignore # Git ignore file
├── README.md # This file
├── assets/
│ ├── icon.png # App icon template (replace with yours)
│ ├── splash.png # Splash screen template (replace)
│ └── adaptive-icon.png # Android adaptive icon (replace)
├── docs/
│ ├── DEPLOYMENT_GUIDE.md # Complete deployment guide (100% complete)
│ ├── APP_STORE_CHECKLIST.md # Submission checklist (100% complete)
│ └── PRIVACY_POLICY.md # Privacy policy template (80% complete)
└── scripts/
└── generate-assets.sh # Asset generator (100% complete)
eas build:configureeas build --profile production --platform alleas submit --platform [ios|android]Your deployment is successful when:
✅ Assets Created: Professional icons and splash screens that represent your app ✅ Configuration Complete: All app.json fields properly set ✅ Builds Successful: Both iOS and Android production builds created ✅ Stores Submitted: Apps uploaded to App Store Connect and Play Console ✅ Review Approved: Apps pass review and are published
# Clear cache and rebuild
rm -rf node_modules package-lock.json
npm install --legacy-peer-deps
eas build --profile production --platform [ios|android] --clear-cache
# Reinstall EAS CLI
npm install -g eas-cli
// Update app.json with a more unique ID
{
"ios": {
"bundleIdentifier": "com.yourname.yourapp123"
},
"android": {
"package": "com.yourname.yourapp123"
}
}
// Add detailed descriptions for all permissions in app.json
{
"ios": {
"infoPlist": {
"NSCameraUsageDescription": "This app uses your camera to scan barcodes."
}
}
}
See docs/DEPLOYMENT_GUIDE.md for comprehensive troubleshooting.
npm install -g eas-cliCompleted all TODOs? Try these:
Official Docs:
Community:
This template is part of the M1: Mobile Foundations course by Telebort.
Free to use for educational purposes.
This template gives you everything you need to deploy your React Native app to production app stores.
Next Steps:
Questions? Check docs/DEPLOYMENT_GUIDE.md for detailed instructions.
Good luck with your app launch! 🚀
Activity 12 Template | M1: Mobile Foundations | Expo SDK 53 + React Native 0.79.5