Skip 1.0
SKIP.tools (via Abe White, Hacker News):
Skip brings Swift app development to Android. Share Swift business logic, or write entire cross-platform apps in SwiftUI.
Skip is the only tool that enables you to develop genuinely native apps for both major mobile platforms with a single codebase. Under the hood, it uses the vendor-recommended technologies on each OS: Swift and SwiftUI on iOS, Kotlin and Compose on Android.
It doesn’t embed a separate engine or runtime into your app, but instead lets you use pure Swift and SwiftUI to create the iOS side of the app (as per Apple’s recommended best practices for creating iOS apps), and transpiles it into a pure Kotlin and Jetpack Compose app for the Android side (which is Google’s recommendation for building Android apps). So your application will use platform-native controls and will automatically have all the affordances provided by the platform vendor: animations, accessibility, and future-proof evolution alongside OS updates.
Previously:
Update (2024-09-13): Craig Hockenberry:
I love what the folks at skip.tools are doing.
But the deal killer for us, and I suspect many others, is the inevitability of UIKit in your SwiftUI app. No matter how hard you try, you’ll eventually have a UIViewControllerRepresentable implementation and that’s all code that’s going to need a separate Kotlin/Compose code.
Worse, these views tend to be a core part of the performance/experience in the app. Like Tapestry’s timeline.
And when you try to implement UIKit as a cross-platform toolkit, you quickly realize that it’s a Sisyphean task.
Previously:
- Bringing iOS Apps to macOS Using Marzipanify
- Microsoft WinObjC
- MAIKit: Framework for Sharing Code Between iOS and OS X
Update (2024-09-25): Helge Heß:
To be honest, I’ve long held the opinion that the @skiptools approach would work really well for doing a Web SwiftUI. I.e. having a Swift to JavaScript transpiler. This is on my long to do list, might be somewhat viable w/ SwiftAST / SwiftSyntax 🙂
Update (2025-11-06): Skip Team:
Since the launch of the official Swift SDK for Android on swift.org last month, we have been overwhelmed by a surge of interest in building cross-platform apps using a single shared SwiftUI codebase. Skip’s earlier “Lite” mode, whereby your Swift code is transpiled into Kotlin, has been free for Indie developers for over a year, but since the launch of Skip’s “Fuse” mode — which is based on the native Swift SDK for Android — it has required a paid commercial license.
Today we are happy to announce that Skip Fuse is now free for Indie developers as well!
Update (2025-11-10): Fatbobman:
Naturally, Skip’s definition of an “indie developer” comes with clear conditions: it applies only to individuals or teams of up to two people, with annual revenue below US $30,000, and it permits the release of one closed-source commercial app (open-source projects are unlimited). Even so, this policy opens the door for Swift developers to enter the Android market at virtually no cost — offering new opportunities for experimentation, growth, and revenue on a massive platform.