Expo UI with SwiftUI and Jetpack Compose in practice

Date
Thursday, March 26, 2026
Time
5 PM - 7 PM [CET]
Location
Online

Expo UI with SwiftUI and Jetpack Compose in practice

Exploring Expo UI with SwiftUI and Jetpack Compose, including setup challenges, architecture tradeoffs, and real-world developer insights.

Date
26 March 2026
-
Time
5 PM - 7 PM [CET]
Location
Online

Expo UI with SwiftUI and Jetpack Compose in practice

youtube-cover
Organizer
Organizer
Presented
Callstack
@
Callstack
Speakers
Speakers
Featuring
Kewin Wereszczyński
Software Engineer
@
Callstack
Łukasz Chludziński
Engineering Manager
@
Callstack
Luke Farrell
Senior Software Engineer
@
Callstack
Featuring
Kewin Wereszczyński
Software Engineer
@
Callstack
Łukasz Chludziński
Engineering Manager
@
Callstack
Luke Farrell
Senior Software Engineer
@
Callstack

Working with Expo UI in real projects

Expo UI introduces a new layer for building interfaces using SwiftUI on iOS and Jetpack Compose on Android. Instead of relying solely on shared React Native components, developers can now tap directly into platform-native UI systems.

In practice, this means wrapping native UI inside a host component and composing views using platform-specific primitives. SwiftUI relies on constructs like VStack and modifiers, while Jetpack Compose introduces its own layout and styling patterns. The result is a more native feel, but also a shift in how components are structured and maintained.

Setup friction and current limitations

Getting started isn’t entirely frictionless. Running Expo UI requires a development build instead of Expo Go, along with proper prebuild steps and native configuration. Even small misconfigurations can block builds or cause linking issues.

There are also inconsistencies between platforms. Some components available in SwiftUI don’t yet have equivalents in Jetpack Compose, which creates gaps when aiming for feature parity. This becomes visible when experimenting with components like color pickers or advanced UI elements.

Rethinking component architecture

Expo UI changes assumptions around shared components. Instead of a single implementation across platforms, developers may need to maintain separate UI logic for iOS and Android while keeping a shared interface at a higher level.

This introduces tradeoffs. On one hand, it allows deeper integration with platform design systems. On the other, it increases complexity in code organization and consistency. The approach shifts from “write once” toward selective platform specialization where it matters.

Native capabilities vs custom implementations

Access to native components brings immediate benefits. Platform-provided UI elements are performant, well-tested, and familiar to users. They remove the need to build and maintain complex components in JavaScript.

At the same time, fully custom cross-platform components still have value. They ensure consistency and reduce duplication, especially when parity between platforms is required. Choosing between native and shared implementations becomes a strategic decision rather than a default.

What this means for React Native development

Expo UI highlights a broader direction: closer alignment with native platforms while keeping React Native as the orchestration layer. It encourages developers to understand SwiftUI and Jetpack Compose concepts, even when working primarily in JavaScript.

This also raises the bar for platform awareness. Differences in behavior, styling, and capabilities become more explicit, pushing teams to make more deliberate decisions about UX and architecture.

Watch the full stream and explore the discussion in detail.

Register now
Using Expo in your React Native project?

We provide expert support for Expo-managed React Native workflows.

Let's chat
Link copied to clipboard!
//
Save my spot

Expo UI with SwiftUI and Jetpack Compose in practice

Exploring Expo UI with SwiftUI and Jetpack Compose, including setup challenges, architecture tradeoffs, and real-world developer insights.

//
Insights

Learn more about Expo

Here's everything we published recently on this topic.

//
Expo

We can help you move
it forward!

At Callstack, we work with companies big and small, pushing React Native everyday.

Mobile App Development

Launch on both Android and iOS with single codebase, keeping high-performance and platform-specific UX.

React Native Development

Hire expert React Native engineers to build, scale, or improve your app, from day one to production.

React Native Trainings

Equip your team with React Native skills through tailored training sessions.

Expo Development

Use Expo’s ecosystem to rapidly build, test, and deploy high-quality universal applications across mobile, web and TV

React Native Performance Optimization

Improve React Native apps speed and efficiency through targeted performance enhancements.

C++ Library Integration for React Native

Wrap existing C-compatible libraries for React Native with type-safe JavaScript APIs.

Shared Native Core for Cross-Platform Apps

Implement business logic once in C++ or Rust and run it across mobile, web, desktop, and TV.

Custom High-Performance Renderers

Build custom-rendered screens with WebGPU, Skia, or Filament for 60fps, 3D, and pixel-perfect UX.