Documentation
What CapWrap adds to the repo
Every file CapWrap may write: Capacitor wrap, init workflow, and the native store pipeline.
CapWrap treats your GitHub repo as the source of truth. It adds files there. It does not keep a shadow copy of your app to compile in secret.
Nothing in this list is your App Store .p8, Play JSON, or keystore. Those stay in CapWrap’s vault. CI fetches them for one run only. See What happens during a build.
Add Capacitor (wrap)
Typical files on capwrap/add-capacitor:
| File | Purpose |
|---|---|
package.json | Adds @capacitor/core, CLI, ios / android packages |
capacitor.config.ts | App ID, app name, web folder |
.gitignore | Ignores Pods, Gradle build, copied web assets |
resources/README.md | Placeholder for icon and splash |
scripts/capwrap-add-native.sh | Helper to run npx cap add |
.github/workflows/capwrap-capacitor-init.yml | On that wrap branch, CI runs npx cap add ios/android and commits ios/ and android/ |
The init workflow runs on the wrap branch, not on every later push. After merge, those native folders should live on your default branch.
Lockfile (package-lock.json / pnpm-lock.yaml) is not updated in the wrap PR. Install in Lovable or locally after merge.
Native store pipeline
Installed from Settings → Pipelines (branch capwrap/native-pipeline unless you commit directly):
| File | Purpose |
|---|---|
.github/workflows/capwrap-native.yml | The job CapWrap starts when you ship |
.capwrap/Fastfile | Fastlane lanes: TestFlight + Play Internal |
.capwrap/fetch-secrets.sh | Downloads store keys + app env for this run |
.capwrap/build-web.sh | Builds the website into a folder with index.html |
.capwrap/report.sh | Tells CapWrap which step succeeded or failed |
.capwrap/keep-native.sh | Packs ios/ and android/ between jobs |
.capwrap/install-js.sh | Installs npm/pnpm/yarn/bun deps (needed on the Android/iOS jobs so Gradle/CocoaPods can see Capacitor) |
.capwrap/run-fastlane.sh | Runs Fastlane |
.capwrap/bump-android-version.py | Increments Android versionCode |
.capwrap/apply-android-signing.py | Points Gradle at the CapWrap upload keystore |
Other .capwrap/* helpers | Web-asset and signing glue |
You can rename the workflow file in Settings; CapWrap will dispatch whatever name you saved.
Preview workflow (optional)
If .github/workflows/capwrap-preview.yml exists, GitHub Actions builds the QR preview. If it is missing, CapWrap’s own servers clone that SHA and run the web build. Either way, the preview is a website, not a TestFlight build.
What is not added
- Your production
.envvalues (vault only) - Apple / Google API keys
- An OTA / Capgo workflow (not installed by CapWrap today)
- Store listing screenshots
If you hate a PR
Close it on GitHub. Re-run Add Capacitor or Install pipeline later. Removing CapWrap from the dashboard does not revert Git commits.