Skip to main content

Expo App Config Generator

Build your Expo app.json or app.config.js visually. Configure app metadata, permissions, plugins, and more.

✓ app.json + app.config.js ✓ iOS + Android permissions ✓ Config plugins ✓ EAS Build ready

Output Format

App Information

Permissions & Features

Config Plugins

app.json

 

Frequently Asked Questions

What is app.json / app.config.js in Expo?▼

app.json is the static configuration file for Expo projects. It defines your app's name, version, icons, splash screen, permissions, and platform-specific settings. app.config.js is the dynamic version — it's a JavaScript file that exports a config object, allowing environment variables, conditional logic, and dynamic values at build time.

When should I use app.config.js instead of app.json?▼

Use app.config.js when you need: (1) environment-specific configs (dev/staging/prod), (2) secrets from environment variables rather than checked-in files, (3) dynamic version numbers from package.json, or (4) conditional feature flags. app.json is simpler and sufficient for static projects.

What are Expo plugins?▼

Expo plugins (config plugins) are functions that modify your native app configuration during the prebuild/EAS Build process. They let packages like expo-camera, expo-notifications, and expo-location add required native code, permissions, and entitlements automatically. You list them in the 'plugins' array. Most popular packages include their own config plugin.

What permissions do I need for common features?▼

Camera: NSCameraUsageDescription (iOS) + android.permission.CAMERA. Location: NSLocationWhenInUseUsageDescription + android.permission.ACCESS_FINE_LOCATION. Notifications: no extra permissions needed on iOS (requested at runtime). Microphone: NSMicrophoneUsageDescription + android.permission.RECORD_AUDIO. Contacts: NSContactsUsageDescription + android.permission.READ_CONTACTS.

What is EAS Build and how does it use app.config.js?▼

EAS Build is Expo's cloud build service. It reads your app.config.js at build time, applies config plugins to generate native code (android/, ios/ folders), then builds the APK/IPA. You can use process.env variables in app.config.js to inject different values per environment — set them in eas.json or as EAS secrets. This is the recommended way to manage build-time configuration.

Share this tool: X / Twitter LinkedIn
✓ 60,000+ developers use DevPlaybook ★★★★★ 4.8 / 5 on Gumroad ✓ MIT licensed · Instant download ✓ No login required

Related Products

on Gumroad

You Might Also Need

More Free Tools

Enjoying this tool? Get more like it.

Weekly developer tool guides, productivity playbooks & AI tricks. Free. No spam.

DevPlaybook Pro 7 days free

Unlock AI-Powered Dev Tools

  • ⚡ AI Code Review, Doc Generator & SQL Builder
  • ⚡ All premium templates & early access
  • ⚡ Member discounts on Gumroad products
Start Free Trial →

$9/mo after trial · Cancel anytime

Want the full toolkit?

Get DevPlaybook Pro

Every template, guide, boilerplate, and automation script in one bundle. 13 premium products — grab them all at once and save big.

$79
$241 separately Save $162 (67% off)
Get DevPlaybook Pro — $79 →

MIT licensed · Instant download · No subscription

See what's included → Browse all deals →