5 open source tools compared. Sorted by stars — scroll down for our analysis.
| Tool | Stars | Velocity | Language | License | Score |
|---|---|---|---|---|---|
Expo Platform for universal React apps | 48.3k | — | TypeScript | MIT License | 77 |
androidx Development environment for Android Jetpack extension libraries under the androidx namespace. Synchronized with Android Jetpack's primary development branch on AOSP. | 5.9k | +11/wk | Kotlin | Apache License 2.0 | 78 |
| 1.8k | +3/wk | Java | — | 57 | |
| 1.3k | +1/wk | F# | Apache-2.0 | 67 | |
app-store-preflight-skills AI agent skill to scan iOS/macOS projects for App Store rejection patterns before submission | 971 | +328/wk | MIT License | 61 |
If you want to build a mobile app for iOS and Android using React and JavaScript — without dealing with Xcode, Android Studio, or native build toolchains — Expo is what makes that actually work. It's the platform layer that sits on top of React Native and handles the painful parts. Expo gives you a managed workflow where you write JavaScript/TypeScript, and Expo handles native builds, over-the-air updates, push notifications, and app store submissions. The Expo Go app lets you test on a real device by scanning a QR code — no build step needed during development. EAS (Expo Application Services) handles cloud builds and submissions. The framework is free and open source (MIT). EAS Build has a free tier (30 builds/month for iOS, 30 for Android) and paid tiers starting at $99/mo for more builds and priority. Solo developers and small teams: this is the fastest path to a shipped mobile app if you know React. The DX is genuinely excellent. Larger teams may need the $99/mo Production plan for build volume. The catch: you're in Expo's world. Ejecting to bare React Native is possible but painful. Some native modules don't work in the managed workflow. And EAS Build can be slow on the free tier.
If you build Android apps, this is the foundation under almost everything you use. AndroidX is Google's official library collection for Android development — it provides backwards-compatible versions of Android platform APIs so your app works on older devices without you writing compatibility code yourself. Think of it as the standard library that Android should have shipped with. This repo is the development source for Jetpack libraries: RecyclerView, Room (database), Navigation, Compose (UI toolkit), WorkManager (background tasks), CameraX, and dozens more. If you've used any modern Android API, it probably came from here. 5.9K stars, Apache 2.0. The star count is low because most Android developers consume these as Gradle dependencies — they don't star the monorepo. The actual usage is in the millions of apps. Everything is free. Google maintains this as part of the Android platform. No paid tier, no premium features, no enterprise edition. The catch: this is a monorepo, not a standalone tool. You don't clone this unless you're contributing to Android itself. As a developer, you pull individual libraries via Gradle. And Google's deprecation cycle is aggressive — APIs get marked deprecated fast, and migration guides aren't always clear.
If you want to build mobile apps for iOS and Android from a single Java or Kotlin codebase — without learning Swift or Kotlin-native — Codename One compiles your code to native binaries for each platform. Not a webview wrapper. Actual native compilation. 1.8K stars, growing slowly at +3/week. Write once in Java/Kotlin, build to iOS (via ParparVM or iKVM), Android (native), web (via JavaScript transpilation), and desktop. The UI toolkit is custom — not native widgets, but rendered to look native. Includes a visual designer, simulator, and build cloud. The free tier lets you build and test locally. The build cloud — which compiles your iOS builds without needing a Mac — starts at $19/month (Basic). Professional is $99/month with additional features. Enterprise pricing available. Solo developers learning Java who want mobile: the free tier gets you started, but you'll need the $19/month plan for iOS builds unless you have a Mac with Xcode. Small teams: $99/month Professional for the full toolchain. Larger teams: evaluate against Flutter or React Native first. The catch: 1.8K stars is tiny for a cross-platform framework. The community is small, StackOverflow answers are sparse, and if the company behind it stops, you're stuck with a niche framework and no ecosystem. Flutter (165K+ stars) and React Native (130K+ stars) have massive communities. Codename One's Java angle is its differentiator, but it's also its limitation — the mobile world moved to Dart and JavaScript/TypeScript.
Fabulous lets you build cross-platform mobile apps using F# with a functional programming approach. If you're an F# developer (or want to be) and need to ship iOS and Android apps, this is your path — it sits on top of .NET MAUI and gives you a declarative, Elm-style architecture. The pitch: instead of the imperative, state-mutating approach of most mobile frameworks, you describe your UI as a function of your state. State changes, UI re-renders. If you've used React or Elm, the mental model is the same. 1,200 stars. Small community but dedicated. F# is a niche language and Fabulous serves that niche well. Completely free under Apache-2.0. No paid tier, no cloud service. You need a .NET development environment and the platform SDKs (Xcode for iOS, Android SDK). The catch: F# is niche. Finding F# mobile developers is hard. The ecosystem is small — fewer libraries, fewer Stack Overflow answers, fewer tutorials compared to React Native, Flutter, or even Kotlin Multiplatform. If you're not already committed to F# and .NET, there's little reason to choose this over more popular options. But if you ARE an F# shop, this is the only real option and it's genuinely good at what it does.
If you build iOS or macOS apps and you're tired of getting rejected by Apple's App Store review — sometimes for reasons you didn't even know existed — this skill scans your project for common rejection patterns before you submit. Think of it as a pre-flight checklist that catches the stuff Apple will flag so you don't waste a week waiting for a rejection email. It checks for missing privacy descriptions, incorrect entitlements, deprecated API usage, and dozens of other patterns that trip up developers. You run it as a Claude Code skill — point it at your Xcode project and it tells you what's going to get flagged. 971 stars, still early (+328/wk). MIT licensed, completely free. The catch: Apple's review guidelines change constantly, and this is a community-maintained skill, not an Apple product. It catches the known patterns, but Apple can always find new reasons to reject you. And it's a static analysis — it can't test runtime behavior or UI guidelines that require human judgment.