Skip to main content
Every build setting in Capwrapper can be configured through a capwrap.config.json file placed in your project root, or through the CapWrapPro dashboard UI. Both methods map to the same keys, so you can start in the dashboard and graduate to file-based config at any point in your workflow.
When both dashboard settings and capwrap.config.json are present, the JSON file takes precedence.

App metadata

App metadata controls how your app is identified and presented across device home screens, the app switcher, and store listings. These are the fields most likely to affect your store approval and user experience.
appName
string
required
The display name shown on the device home screen, in the app switcher, and in store listings. This is what users see after installing your app. Keep it concise — most devices truncate names beyond 12–15 characters.Example: "My Finance App"
Choose a name that is unique and recognisable. Avoid generic names like “My App” — app stores may flag them during review.
appVersion
string
required
The semantic version string for this build, following major.minor.patch format (semver). Both the Play Store and App Store require each new submission to have a higher version number than the previous one. Capwrapper automatically derives the numeric version code from this string.Example: "1.2.0"
Submitting a build with a version number equal to or lower than the currently published version will be rejected by both app stores.
packageId
string
required
The unique application identifier in reverse domain notation. Must be lowercase, contain only letters, numbers, and periods, and include at least two segments (e.g. com.example).Example: "com.acmecorp.financeapp"
packageId cannot be changed after your first production release. A different package ID creates a completely separate app listing in the store — your existing users will not receive updates.
description
string
A short description of your app used in store listings and metadata. Keep it under 80 characters for optimal display across all store surfaces. This is the first thing prospective users read, so make it specific and action-oriented.Example: "Track expenses, manage budgets, and view financial reports on the go."
author
string
The developer or company name used in store metadata and the app’s About section. On the Play Store this appears as the developer name. On the App Store it maps to the provider field.Example: "Acme Corporation"

Appearance

The appearance section controls the visual identity of your app. You can customise:
  • App icon — the icon shown on the home screen and in the app switcher
  • Splash screen — the loading screen displayed while your app initialises
  • Custom colors and branding — accent colors and theme settings applied across the native shell
These settings are configured in the dashboard’s Appearance tab or via the corresponding keys in capwrap.config.json.

Permissions

Permissions are declared at build time and presented to users as native permission prompts at runtime. Only declare permissions your app actually uses — app stores may reject builds that request permissions not justified by the app’s functionality.
PermissionWhat it enables
CameraQR scanning, document scanning, image capture
Location / GPSMaps integration, background location tracking
Push notificationsRequires Firebase setup (see Integrations)
MicrophoneVoice input and audio recording
ContactsReading device contacts (name and phone number)
CalendarAdding events to the device calendar
Health dataStep count via Apple Health or Google Fit
Storage / FilesFile download and upload from device storage

Integrations

Capwrapper supports the following third-party integrations, each configurable via capwrap.config.json or the dashboard:
  • Firebase — enables push notifications (via FCM) and Firebase Analytics event logging
  • RevenueCat — powers in-app purchases and subscription management through the NativeInAppPurchase bridge
  • Google AdMob — delivers banner, interstitial, and rewarded ads via the NativeAdMob bridge
  • Google Sign-In, Facebook, Apple Sign-In — native social authentication via the NativeSocialLogin bridge
Each integration requires its own credentials (API keys, service account files, or provisioning configuration). You supply these in the dashboard under Integrations or as fields in the config file.

Example config

The following is a minimal working capwrap.config.json covering the core app metadata fields:
capwrap.config.json
{
  "appName": "My Finance App",
  "appVersion": "1.2.0",
  "packageId": "com.acmecorp.financeapp",
  "description": "Track expenses and manage budgets on the go.",
  "author": "Acme Corporation"
}
Place this file in the root of your project. Capwrapper will detect it automatically at build time and merge it with any settings saved in the dashboard, with the file taking precedence.