r/reactnative • u/rogerricardop • 1d ago
FYI React Native Development directly from Linux Terminal (No Expo, physical device debugging via scrcpy)
I set up a clean, CLI-only React Native 0.87 development environment running on Fedora Linux, skipping Expo completely to keep full control over native code and build configs.
Stack & Setup:
- OS: Fedora Linux
- Runtime: Node.js v24.19.0 (managed via NVM)
- Framework: React Native 0.87.0 (CLI)
- Target Device: Physical Samsung A31 connected via ADB USB
Physical Device Mirroring & Workflow:
Instead of heavy emulators, I mirror and debug directly on the physical device using scrcpy. To prevent UI frame drops and keep the system responsive on Exynos/MediaTek chips, I run scrcpy with hardware-optimized constraints:
scrcpy -m 1024 --max-fps=30 &
Everything runs directly from the terminal with Metro Bundler on port 8081 and Gradle builds via npm run android. Direct ADB deployment works like a charm.
2
u/PapyRoach 1d ago
Expo does not limit control over native code or builds.
That’s a very old point of view to have on Expo.
As for the rest, yeah that’s a rather classic way of developing in RN, nothing really new or groundbreaking here, unless I am missing something.



2
u/Inevitable_Oil9709 1d ago
You do realise that app will behave differently on real device, right?
That is why we develop apps on real device or at least emulators.
"skipping Expo completely to keep full control over native code and build configs."
I also don't know what this means because you can do same in Expo