Skip to content

Expo

Open-source framework for building native Android, iOS, and web apps with React.

Stars
53.3k
Forks
14.9k
Licence
MIT
Language
TypeScript
Last update
4 days ago
Type
Framework

What it is

Expo is an open-source platform for building apps that run on Android, iOS, and the web, written in React and JavaScript. It includes a universal runtime and a set of libraries so one codebase can produce native apps. The repository also holds the Expo SDK, CLI, Router, Expo Go app, and documentation source.

  • Build a cross-platform mobile app from a template created with npx create-expo-app
  • Test an app on a phone instantly using the Expo Go app
  • Try Expo ideas in the browser using Snack without local setup
  • Read the official docs for guides on building and deploying universal apps

Great for

  • Developers who want to build iOS and Android apps with React and JavaScript
  • Teams that want one codebase covering mobile and web
  • People who want to try Expo quickly in the browser via Snack
  • Developers who want hosted build and release services through EAS

Not ideal for

  • People who only need a website and have no mobile plans, since a simpler web framework may suffice
  • Developers who need full control over native code from day one, as the README points to custom native modules as a separate workflow
  • Non-programmers, since the project assumes React and JavaScript knowledge
Step-by-step guide: how to use ExpoInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js

    Create a new Expo app

    npx create-expo-app
  2. 2

    Run it

    • Run npx create-expo-app to generate a project from a template
    • Change into the new project folder
    • Start the development server with the command shown in the generated project's instructions
    • Open the app in Expo Go on your phone or in a browser
  3. 3

    Get the most out of it

    • Use Snack at snack.expo.dev to prototype without local installation
    • Read the Expo docs at docs.expo.dev for guides on custom native modules
    • Use Expo Application Services (EAS) for hosted builds and shipping, as described in the README
    • Check the templates folder in the repo to see the starter projects that create-expo-app uses

Downloads

Strengths

  • Covers Android, iOS, and web from a single React and JavaScript codebase
  • Large public project with active development and an MIT license
  • Has official documentation, a community chat, and a browser-based playground

Trade-offs

  • The README is a monorepo overview, so most setup detail lives in external docs rather than here
  • Some dependencies use other licenses, such as BSD, per the README
  • Some capabilities such as hosted services are provided by EAS, a separate platform

How it compares

ProjectStarsTypeLevelUpdatedBest for
expo (this)53.3kFrameworkintermediate4 days agoDevelopers who want to build iOS and Android apps with React and JavaScript
capacitor17kDev toolintermediate7 days agoWeb developers who already have a modern web app and want it in the app stores
react-native127kFrameworkintermediate4 days agoWeb developers who already know React and want to build mobile apps
framework718.8kFrameworkintermediate6 days agoDevelopers who already know HTML, CSS and JavaScript and want to build mobile-style apps
maui23.3kFrameworkintermediate4 days agoC# developers who want to target phones and desktops from one codebase
fastlane42.3kCLIintermediate4 days agoiOS developers who repeat the same build and release steps by hand

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.