This guide turns your Replit Expo project into a real installable Android app (APK) you can sideload (install directly) without using Expo Go or publishing to the Play Store.
- Expo Go + QR = runs your app inside the Expo Go container and usually needs an internet/dev server.
- EAS Build (internal distribution) = produces a standalone APK you can install like a normal app.
- An Expo/Expo.dev account (free is fine)
- Your project runs in Replit already
In Replit Shell
run:
npx eas-cli@latest login
npx eas-cli@latest build:configureOr install it in your project then use npx eas
npm i -D eas-cli
npx eas login
npx eas build:configure- Choose Android when asked.
- This creates
eas.jsonand links your local project to an EAS project.
Note: If you tried
npx eas ...and got “could not determine executable”, useeas-clilike above.
In app.json (or app.config.js), make sure you have:
"android": {
"package": "com.yourname.yourapp"
}Important rules:
- Keep it unique (it identifies your app on Android).
- Don’t change it later unless you want Android to treat it as a different app.
Edit eas.json and set your preview profile like this:

{
"build": {
"preview": {
"distribution": "internal",
"android": { "buildType": "apk" }
}
}
}distribution: "internal"= build is meant for sharing/testing without Play Store.buildType: "apk"= gives you an APK you can sideload.
(You can also add "android": { "buildType": "apk" } to your development profile if you want.)
Run:
npx eas-cli@latest build -p android --profile previewWhat happens:
- EAS creates/uses Android credentials (keystore) on Expo servers
- Uploads your project
- Builds it in the EAS queue
- Produces a downloadable APK
When the build finishes:
- Open the build page / artifact link from Expo
- Download the APK
- Install it on your phone (Android may ask you to allow “Install unknown apps” once)
Yes, you can build multiple separate apps:
- Each one must have a different
android.package - Build each project with the same EAS command
- Install each APK normally
- If the build shows “queued” on free tier, that’s normal.
- If the build fails, open Logs and copy the last ~30 lines to diagnose quickly.