
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
How to get it
- 1
Install with a package manager
You'll need: Node.js
Create a new Expo app
npx create-expo-app - 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
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
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| expo (this) | 53.3k | Framework | intermediate | 4 days ago | Developers who want to build iOS and Android apps with React and JavaScript |
| capacitor | 17k | Dev tool | intermediate | 7 days ago | Web developers who already have a modern web app and want it in the app stores |
| react-native | 127k | Framework | intermediate | 4 days ago | Web developers who already know React and want to build mobile apps |
| framework7 | 18.8k | Framework | intermediate | 6 days ago | Developers who already know HTML, CSS and JavaScript and want to build mobile-style apps |
| maui | 23.3k | Framework | intermediate | 4 days ago | C# developers who want to target phones and desktops from one codebase |
| fastlane | 42.3k | CLI | intermediate | 4 days ago | iOS 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.