Build and bundle a React Native mobile app so it can run on iOS or Android devices.
Configure custom file-type handling or caching behavior for large React Native codebases.
Speed up development reloads by tuning Metro's bundling settings for your team's project.
Ships bundled with React Native, no separate install needed for standard use.
Metro is the JavaScript bundler that powers React Native apps. A bundler takes all the separate JavaScript files in a project and combines them into a single package that a phone or device can actually run. Metro is the tool that handles this step whenever you build or reload a React Native application. It was originally built inside the React Native codebase at Meta (formerly Facebook) and later moved to its own repository so that the team could respond to issues and contributions more easily. If you have ever used React Native to build a mobile app, Metro was almost certainly running in the background without you realizing it. The project focuses on three qualities. It aims to be fast, targeting reload times under one second so developers do not spend time waiting after saving a file. It is designed to scale, meaning it can handle apps with thousands of individual JavaScript files without slowing down. It is also built to work with React Native projects out of the box, so there is no extra setup required for standard use cases. Metro ships as part of React Native, so most people do not install it separately. Advanced users who want to configure it, such as changing how certain file types are handled or adjusting caching behavior, can find the full documentation on the Metro website. The source code and documentation files both live in this repository. The project is released under the MIT license.
← facebook on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.