Skip to main content

Crate gpui_mobile

Crate gpui_mobile 

Source
Expand description

§GPUI Mobile — Mobile platform support for GPUI

gpui-mobile provides iOS and Android platform implementations for GPUI, the GPU-accelerated UI framework from the Zed editor.

§Status

This crate is in early development. The full platform implementations (iOS via Metal/UIKit, Android via Vulkan/NDK) depend on upstream Zed crates (gpui, gpui_wgpu) that are not yet published on crates.io.

This initial release reserves the crate name and exposes the platform-independent momentum scrolling engine, which can be used standalone.

Once the upstream dependencies are available on crates.io, this crate will be updated to include the full Platform trait implementations for both iOS and Android.

§Momentum Scrolling

The momentum module provides:

  • VelocityTracker — records recent touch positions and computes release velocity using weighted least-squares estimation.
  • MomentumScroller — takes a release velocity and produces a stream of decelerating scroll deltas, matching native iOS UIScrollView / Android OverScroller feel.

§Full Feature Set (coming soon)

The complete crate provides:

  • Full gpui::Platform implementation for iOS and Android
  • GPU-accelerated rendering via Metal (iOS) and Vulkan/GL (Android)
  • Touch input with tap-vs-scroll state machine
  • Momentum scrolling with native-feel deceleration
  • Emoji rendering with bundled CBDT bitmap emoji font for Android
  • Keyboard input — hardware and software keyboard support
  • Safe area insets — notch / home indicator / status bar awareness
  • Dark mode — responds to system appearance changes

§Repository

Full source code, examples, and build instructions: https://github.com/itsbalamurali/gpui-mobile

Modules§

momentum
Momentum scrolling (inertia / fling) for touch-based platforms.