Testing & Quality
CI/CD Workflows
The GitHub Actions workflows that guard quality and publish apps.
All workflows live in .github/workflows. Most run on main and every PR, while a few trigger manually or on releases.
| Workflow | Trigger | Purpose |
|---|---|---|
lint-ts.yml | push/PR | Runs ESLint + tsc --noEmit across the monorepo so types stay fresh. |
test.yml | push/PR | Executes pnpm test:ci, which covers Jest (frontend) and Vitest (backend). Reports failure details inline on GitHub. |
expo-doctor.yml | push/PR | Runs pnpm native:doctor (Expo/Turborepo combo) to catch dependency mismatches. |
compress-images.yml | push with new assets | Optimizes new .webp/.webp/.webp files and opens a PR with the compressed versions. |
eas-build-qa.yml | Release created | Triggers an Expo QA build for internal testers on both Android and iOS. |
eas-build-prod.yml | Manual dispatch | Builds production-ready binaries via EAS for store submissions. |
new-app-version.yml | Manual dispatch | Bumps versions, tags a release, and pushes the update so the other workflows run on the new tag. |
Run the same scripts locally to mirror the CI pipeline before opening a PR: pnpm lint, pnpm test, pnpm native:doctor.
Found an issue or bug in the docs?
Help me improve! If you spot any errors, typos, or have suggestions, please let me know.
Reach out on X/Twitter @zafarbuildzz