Why Radix UI + Capacitor for hybrid apps
Picking a UI library and a mobile shell that do not fight each other.
Building one app for web, iOS, and Android usually means picking a hybrid framework. We chose Capacitor: it wraps a real WebView, gives access to native APIs through plugins, and does not impose its own UI conventions.
For UI, we chose Radix UI Themes. The components are accessible by default, theme-able through CSS variables, and small enough that they do not bloat the bundle. A user-facing theme customizer (light/dark/system, accent colors, border radius, scaling) drops in as a thin layer over Radix's existing primitives.
The combination means the same React tree renders cleanly on a desktop browser and an Android phone. The ten percent of UI that needs to feel native — bottom sheets, swipe gestures, haptics — gets a Capacitor plugin and a small wrapper component. Everything else is shared.
For a CRM, where the same workflows happen at a desk and on a sales call, this matters more than it might for a desktop-only B2B SaaS.
Published 2026-04-05 by OrbitCubs Team.
OrbitCubs CRM — Why Radix UI + Capacitor for hybrid apps