# ── Secrets: never commit, never tarball ──────────────────────────────────────────── # The upload key is the app's permanent identity on Play. Back both up off this Mac # (password manager / encrypted external drive) — not into a repo. keystore.properties ios-signing.config play-service-account.json keystore/ *.jks *.keystore *.p12 *.mobileprovision ExportOptions.plist # ── Generated: rebuilt by `npm run sync:web` on every release ─────────────────────── # www/ is a disposable copy of ../server/public. Editing it is always a mistake — the # next sync wipes it. Change the web app instead. www/ node_modules/ # ── Build output ──────────────────────────────────────────────────────────────────── build/ dist/ *.ipa *.aab *.apk *.dSYM.zip *.xcarchive # ── Machine-specific ──────────────────────────────────────────────────────────────── android/local.properties android/.gradle/ android/build/ android/app/build/ android/capacitor-cordova-android-plugins/build/ .gradle/ # ── Xcode / SPM ───────────────────────────────────────────────────────────────────── ios/App/build/ ios/App/Pods/ ios/App/App/public/ ios/App/DerivedData/ ios/.spm-cache/ **/xcuserdata/ **/*.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist .swiftpm/ .DS_Store