whatisgithub

What is expo?

gaearon/expo — explained in plain English

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

13Audience · pm founderComplexity · 3/5StaleLicenseSetup · moderate

In one sentence

A platform for writing one React app in JavaScript that runs natively on Android, iPhone, and the web, so you build once instead of three separate apps.

Mindmap

mindmap
  root((repo))
    What it does
      Write once run everywhere
      Native runtime
      Instant device preview
    Tech stack
      JavaScript
      React
      Expo CLI
      Expo Go
    Use cases
      Prototype a mobile app fast
      Ship to iOS and Android together
      Preview on a real phone instantly
    Audience
      Mobile developers
      Startup founders
    Extras
      EAS paid hosting
      MIT licensed

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 build with it?

USE CASE 1

Prototype a mobile app and ship it to iOS and Android without hiring separate specialists.

USE CASE 2

Preview app changes instantly on a real phone using Expo Go.

USE CASE 3

Build core libraries or CLI tooling in the packages folder.

USE CASE 4

Use EAS to build, sign, and deploy a finished app without managing infrastructure.

What is it built with?

JavaScriptReactExpo CLIExpo Go

How does it compare?

gaearon/expo09catho/axon0x1-1/revival
Stars131313
LanguageJavaScriptC++
Last pushed2024-11-01
MaintenanceStale
Setup difficultymoderatemoderatehard
Complexity3/54/55/5
Audiencepm founderresearcherdeveloper

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

How do you get it running?

Difficulty · moderate Time to first run · 30min

Expo Go preview is free, EAS build/deploy hosting is a paid service.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

So what is it?

Expo is a platform that lets you write a single React-based app that works on Android phones, iPhones, and the web. Instead of building three separate apps with three different languages and toolsets, you write your code once in JavaScript and React, and it runs natively on all three platforms. That's the core promise, less duplication, faster development. Under the hood, Expo provides a runtime (a piece of software that executes your code on each device) and a library of pre-built tools so you don't have to build everything from scratch. The repository itself is the backbone: it contains all the core libraries and modules, a command-line tool (CLI) for managing your project, built-in routing for navigation, documentation, and the Expo Go app, a mobile app you can use to instantly preview and test your work on a real phone without going through the full build-and-deploy cycle. The people who'd use this are mobile app developers who want to save time, startup founders building their first app, or teams that want to ship to multiple platforms without hiring separate iOS and Android specialists. For example, a founder could prototype a social app and get it running on both Android and iOS in weeks instead of months. The project also includes Expo Application Services (EAS), a paid hosting platform that handles building, signing, and deploying your finished app, though the core open-source project is free. The README shows this is a mature, well-maintained project with clear documentation, an active community on Discord, and a structured codebase. Developers can contribute by modifying libraries in the packages folder, test changes in the apps folder, and reference guides for advanced work. The project is licensed under MIT, meaning you can use and modify it freely.

Copy-paste prompts

Prompt 1
Help me scaffold a new cross-platform app with Expo that runs on iOS, Android, and web.
Prompt 2
Show me how to preview my Expo app on a real phone using Expo Go.
Prompt 3
Explain how Expo's runtime lets one React codebase work on three platforms.
Prompt 4
Walk me through using EAS to build and deploy my Expo app.
Prompt 5
Help me contribute a fix to a library in Expo's packages folder.

Frequently asked questions

What is expo?

A platform for writing one React app in JavaScript that runs natively on Android, iPhone, and the web, so you build once instead of three separate apps.

Is expo actively maintained?

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

What license does expo use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is expo to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is expo for?

Mainly pm founder.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.