Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

expo-build-properties

expo1.5mMIT0.13.2TypeScript support: included

Config plugin to customize native build properties on prebuild

react-native, expo, build, build-properties

readme

expo sdk

Expo

Expo SDK version Chat or ask a question License: MIT Downloads

Try Expo in the Browser  •  Read the Documentation  •  Learn more on our blog  •  Request a feature

Follow us on

Expo on X   Expo on GitHub   Expo on Reddit   Expo on LinkedIn   Expo on LinkedIn

Introduction

Expo is an open-source platform for making universal native apps that run on Android, iOS, and the web. It includes a universal runtime and libraries that let you build native apps by writing React and JavaScript.

This repository includes the Expo SDK, Modules API, Go app, CLI, Router, documentation, and various other supporting tools. Expo Application Services (EAS) is a platform of hosted services that are deeply integrated with Expo open source tools. EAS helps you build, ship, and iterate on your app as an individual or a team.

Read the Expo Community Guidelines before interacting in the repository. Thank you for helping keep the Expo community open and welcoming!

Table of contents

📚 Documentation

Learn about building and deploying universal apps in our official docs!

🗺 Project Layout

  • packages All the source code for Expo modules, if you want to edit a library or just see how it works this is where you'll find it.
  • apps This is where you can find Expo projects which are linked to the development modules. You'll do most of your testing in here.
  • apps/expo-go This is where you can find the source code for Expo Go.
  • apps/expo-go/ios/Exponent.xcworkspace is the Xcode workspace. When developing iOS, always open this instead of Exponent.xcodeproj because the workspace also loads the CocoaPods dependencies.
  • docs The source code for https://docs.expo.dev
  • templates The template projects you get when you run npx create-expo-app
  • react-native-lab This is our fork of react-native used to build Expo Go.
  • guides In-depth tutorials for advanced topics like contributing to the client.
  • tools contain build and configuration tools.
  • template-files contains templates for files that require private keys. They are populated using the keys in template-files/keys.json.
  • template-files/ios/dependencies.json specifies the CocoaPods dependencies of the app.

🏅 Badges

Let everyone know your app can be run instantly in the Expo Go app!

runs with Expo Go

runs with Expo Go

[![runs with Expo Go](https://img.shields.io/badge/Runs%20with%20Expo%20Go-000.svg?style=flat-square&logo=EXPO&labelColor=f3f3f3&logoColor=000)](https://expo.dev/client)

[![runs with Expo Go](https://img.shields.io/badge/Runs%20with%20Expo%20Go-4630EB.svg?style=flat-square&logo=EXPO&labelColor=f3f3f3&logoColor=000)](https://expo.dev/client)

👏 Contributing

If you like Expo and want to help make it better then check out our contributing guide! Check out the CLI package to work on the Expo CLI.

❓ FAQ

If you have questions about Expo and want answers, then check out our Frequently Asked Questions!

If you still have questions you can ask them on our Discord and Forums or X @expo.

💙 The Team

Curious about who makes Expo? Here are our team members!

License

The Expo source code is made available under the MIT license. Some of the dependencies are licensed differently, with the BSD license, for example.

Star the Expo repo on GitHub to support the project

changelog

Changelog

Unpublished

🛠 Breaking changes

🎉 New features

🐛 Bug fixes

💡 Others

0.13.2 — 2025-01-10

This version does not introduce any user-facing changes.

0.13.1 — 2024-10-24

This version does not introduce any user-facing changes.

0.13.0 — 2024-10-22

🛠 Breaking changes

💡 Others

  • Export missing types. (#29401 by @Simek)
  • Deprecate android.newArchEnabled and ios.newArchEnabled in favor of app config newArchEnabled. (#31963 by @gabrieldonadel)

0.12.5 - 2024-08-07

This version does not introduce any user-facing changes.

0.12.4 - 2024-07-30

🎉 New features

  • Add android.enablePngCrunchInReleaseBuilds to enable toggling PNG crunching in release builds. (#30699 by @brentvatne)

0.12.3 - 2024-06-06

🎉 New features

  • ios.privacyManifestAggregationEnabled is now enabled by default. (#29439 by @alanjhughes)

0.12.2 - 2024-06-05

🐛 Bug fixes

  • Improved android manifest queries, preventing overrides of <package> tags and splitting <provider> instead of merging them into one string (#29418 by @Titozzz)

0.12.1 — 2024-05-06

🎉 New features

  • Add ios.ccacheEnabled option to enable the C++ compiler cache for iOS builds. (#28638 by @byCedric)
  • Add ios.privacyManifestAggregationEnabled option to enable/disable privacy manifest aggregation. (#28646 by @brentvatne).

0.12.0 — 2024-04-18

🛠 Breaking changes

🎉 New features

  • Expand android.extraMavenRepos to allow authentication-required Maven repositories. (#26895 by @bpeltonc)
  • Added extraPods and extraMavenRepos supports within withBuildProperties() that library authors could reuse in third-party libraries. (#28106 by @kudo)

📚 3rd party library updates

0.11.1 - 2024-02-01

🎉 New features

  • Added useLegacyPackaging property to instruct AGP to compress native libraries in the APK. (#26779 by @alanjhughes)

0.11.0 — 2023-11-14

🛠 Breaking changes

0.10.0 — 2023-10-17

🎉 New features

  • Add android.manifestQueries to allow adding and modifying the <queries> tag in the App Manifest. (#24619 by @alanjhughes)

0.9.1 — 2023-09-04

This version does not introduce any user-facing changes.

0.9.0 — 2023-07-28

This version does not introduce any user-facing changes.

0.8.3 — 2023-06-28

This version does not introduce any user-facing changes.

0.8.2 — 2023-06-27

💡 Others

0.8.1 — 2023-06-23

This version does not introduce any user-facing changes.

0.8.0 — 2023-06-21

🛠 Breaking changes

  • Replaced unstable_networkInspector as networkInspector and enabled the feature by default. (#22994 by @kudo)

🎉 New features

  • Added android.extraMavenRepos and ios.extraPods support. (#22785 by @kudo)
  • Added android.usesCleartextTraffic support. (#23043 by @alanjhughes)

0.7.0 — 2023-05-08

🐛 Bug fixes

  • Fixed false alarm error throwing when ios.flipper=false and useFrameworks. (#22296 by @kudo)

0.6.0 - 2023-04-14

🎉 New features

  • Added experimental unstable_networkInspector properties. (#22129 by @kudo)

0.5.2 — 2023-04-03

🎉 New features

  • Added enableShrinkResourcesInReleaseBuilds property to enable Android shrinkResources build feature. (#21911 by @kudo)

0.5.1 — 2023-02-09

🎉 New features

0.5.0 — 2023-02-03

🎉 New features

0.4.1 - 2022-11-24

🐛 Bug fixes

  • Fixed extraProguardRules be overwritten from multiple withBuildProperties execution. (#20106 by @kudo)

0.4.0 — 2022-10-25

🛠 Breaking changes

  • [plugin] Upgrade minimum runtime requirement to Node 14 (LTS). (#18204 by @EvanBacon)
  • Bumped iOS deployment target to 13.0 and deprecated support for iOS 12. (#18873 by @tsapeta)

💡 Others

  • Drop @expo/config-plugins dependency in favor of peer dependency on expo. (#18595 by @EvanBacon)

0.3.0 — 2022-07-07

🎉 New features

  • Add android.minSdkVersion to override the minimum required Android SDK version. (#17647 by @Kudo)