git404hub

what is metro fr?

gaearon/metro — explained in plain English

Analysis updated 2026-07-17 · repo last pushed 2024-11-17

7JavaScriptAudience · developerComplexity · 3/5StaleSetup · easy

tl;dr

Metro is the JavaScript bundler that packages React Native app code for iOS and Android, with fast reloads.

vibe map

mindmap
  root((metro))
    What it does
      Bundles JS code
      Fast reload
      Handles large projects
    Tech stack
      JavaScript
      React Native
    Use cases
      Build React Native apps
      Development server
      Release builds
    Audience
      React Native developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Bundle a React Native app's code for iOS and Android without extra configuration.

VIBE 2

Run a development server that reloads changes almost instantly.

VIBE 3

Build large React Native projects with thousands of files without slowdowns.

what's the stack?

JavaScriptReact Native

how it stacks up fr

gaearon/metroboneskull/promwrapbrunosimon/ecole-multimedia-fi-dev2-2019
Stars777
LanguageJavaScriptJavaScriptJavaScript
Last pushed2024-11-172020-07-212021-08-12
MaintenanceStaleDormantDormant
Setup difficultyeasyeasyhard
Complexity3/52/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · easy time til it works · 5min

Comes built into React Native projects, no extra configuration needed.

in plain english

Metro is the tool that packages up JavaScript code for React Native apps. Think of it like a compiler: when you write your app's code across multiple files, Metro takes all those pieces and bundles them together into a format that can run on iOS and Android phones. The key advantage of Metro is speed. It's designed to reload your code almost instantly when you make changes during development, which means you can see what you're building without waiting around. It also handles large projects well, apps with thousands of individual code files, without getting bogged down. Because it's built specifically for React Native (not adapted from a general-purpose tool), it works with every React Native project out of the box, with no extra configuration needed. If you're a React Native developer, you're probably already using Metro without thinking about it. When you run your development server or build an app for release, Metro is the thing doing the heavy lifting behind the scenes. The tool was originally part of React Native itself, but the team split it out into its own project to make it easier to improve and fix bugs faster. The README itself points to [the Metro website](https://facebook.github.io/metro/) for the actual documentation and setup instructions, so this repository is the source code rather than a beginner-friendly tutorial.

prompts (copy fr)

prompt 1
Explain what Metro does when I run my React Native development server.
prompt 2
Help me troubleshoot why Metro's fast reload isn't picking up my code changes.
prompt 3
Show me how Metro bundles a React Native project for release.

Frequently asked questions

what is metro fr?

Metro is the JavaScript bundler that packages React Native app code for iOS and Android, with fast reloads.

What language is metro written in?

Mainly JavaScript. The stack also includes JavaScript, React Native.

Is metro actively maintained?

Stale — no commits in 1-2 years (last push 2024-11-17).

How hard is metro to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is metro for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.