Skip to content

Initial commit: Expo + Expo Router starter with CI/CD #1

Initial commit: Expo + Expo Router starter with CI/CD

Initial commit: Expo + Expo Router starter with CI/CD #1

Workflow file for this run

name: Template Setup
on:
push:
branches: [main]
jobs:
setup:
if: github.event.created || github.run_number == 1
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- uses: actions/checkout@v4
- name: Check if template
id: check
run: |
if [ -f "app.json" ]; then
NAME=$(node -e "console.log(JSON.parse(require('fs').readFileSync('app.json','utf8')).expo.name)")
if [ "$NAME" = "My App" ]; then
echo "is_template=true" >> "$GITHUB_OUTPUT"
else
echo "is_template=false" >> "$GITHUB_OUTPUT"
fi
fi
- name: Create setup checklist
if: steps.check.outputs.is_template == 'true'
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue create \
--title "Setup: Configure your app" \
--body "$(cat <<'EOF'
Welcome! You've created a new project from **react-native-starter**. Here's your setup checklist:
## Required
- [ ] Update `app.json` — change `name`, `slug`, `ios.bundleIdentifier`, `android.package`
- [ ] Replace images in `assets/` — `icon.png` (1024x1024), `splash.png` (1284x2778), `adaptive-icon.png` (1024x1024)
- [ ] Create an Expo account and project — see [docs/EXPO_SETUP.md](docs/EXPO_SETUP.md)
## CI/CD Setup
- [ ] Add GitHub Secret: `EXPO_TOKEN` — see [docs/EXPO_SETUP.md](docs/EXPO_SETUP.md)
- [ ] **iOS:** Set up Apple Developer account + App Store Connect — see [docs/APP_STORE_SETUP.md](docs/APP_STORE_SETUP.md)
- [ ] **iOS:** Update `eas.json` submit config (`appleId`, `ascAppId`, `appleTeamId`)
- [ ] **Android:** Set up Google Play Console + service account — see [docs/PLAY_STORE_SETUP.md](docs/PLAY_STORE_SETUP.md)
- [ ] **Android:** Add `play-store-key.json` to your project root (gitignored)
## Recommended
- [ ] Run `eas credentials` to set up signing certificates
- [ ] Do a manual first upload to both stores before using CD
- [ ] Write tests in `tests/` and run with `npm test`
- [ ] Delete this issue when done
Happy building!
EOF
)"