Native all the way, until you need text
AIThis post was created with the assistance of artificial intelligence (AI).

TL;DR

Before you orderOffer from Amazon

Get the latest gadgets delivered free with Prime

  • Fast, free delivery on millions of items
  • Prime Video, Amazon Music and more included
  • Member-only deals all year
Start your free Prime trial Free trial for eligible customers · Cancel anytime
As an affiliate, we earn on qualifying purchases.

A seasoned macOS/iOS developer reports that native SDKs like SwiftUI and TextKit are inadequate for complex rich text features such as Markdown and message selection. As a result, many turn to web-based solutions like Electron, which offer better performance and control. The issue highlights limitations in native development for modern chat and rich text applications.

A seasoned macOS and iOS developer has publicly detailed the persistent limitations of native Apple SDKs for building complex, rich text features such as Markdown support and message selection, leading to a shift toward web-based solutions like Electron.

The developer, with nearly twenty years of experience, describes trying to implement a simple chat application with Markdown support entirely in Swift/SwiftUI, only to encounter significant performance and functionality issues. SwiftUI, while suitable for basic screens, struggles with complex text selection and streaming, prompting a move to NSTextView and TextKit 2, which still fall short in performance and stability.

Switching to AppKit and lower-level TextKit 2 prototypes provided limited success, with performance issues and difficulties in achieving features like smooth streaming and native interactions. The developer then explored WebKit for rendering Markdown, which offered near-perfect performance, typography, and control, with seamless macOS integration. Finally, they tested Electron, which outperformed native options in rendering, performance, and feature set, despite initial skepticism about web-based frameworks.

Why It Matters

This development underscores a core challenge facing developers building modern chat and rich text applications on macOS and iOS. Native SDKs such as SwiftUI and TextKit, despite their maturity, are not meeting the demands of complex, interactive, long-form content. As a result, many developers are opting for web-based frameworks like Electron, which provide better performance, flexibility, and cross-platform compatibility. This shift could influence future platform development priorities and developer choices.

Products Worth Considering

Apple AirPods Pro 3 Wireless Earbuds with Active Noise Cancellation

Apple AirPods Pro 3 Wireless Earbuds with Active Noise Cancellation

LG UltraGear 34GX90SA-W 34-inch WQHD Curved OLED Gaming Monitor

LG UltraGear 34GX90SA-W 34-inch WQHD Curved OLED Gaming Monitor

Samsung 49-Inch Odyssey G93SC QD-OLED Curved Gaming Monitor

Samsung 49-Inch Odyssey G93SC QD-OLED Curved Gaming Monitor

As an affiliate, we earn on qualifying purchases.

Background

Over the past few years, native Apple SDKs have been promoted for building high-performance, integrated applications. However, as applications grow in complexity—particularly in handling streaming text, Markdown rendering, and rich interactions—developers report increasing difficulty in achieving desired functionality with native tools. This has led to a notable trend where web technologies are increasingly favored for complex UI features, especially in chat-heavy or long-form content apps.

The developer’s experience reflects broader industry challenges: native frameworks excel in simple UI but falter in advanced text manipulation, prompting a reconsideration of platform choices for certain application types.

“I still cannot make a simple thing work properly: a chat with Markdown & the ability to select a whole message.”

— Anonymous developer

“WebKit and Electron just work. Performance, typography, control—all of it better than native solutions.”

— Same developer

What Remains Unclear

It remains unclear whether Apple will address these limitations in future SDK updates or if the industry will continue to favor web-based frameworks for complex text and chat applications. The long-term viability of native solutions for such features is still uncertain.

What’s Next

Expect ongoing experimentation and development with web technologies like Electron and React Native for chat and rich text apps on macOS/iOS. Future SDK updates may attempt to improve native text handling, but current trends suggest a continued reliance on web-based frameworks for complex features.

Key Questions

Why are native SDKs failing for complex text features?

Native SDKs like SwiftUI and TextKit are optimized for simple UI but lack the robustness needed for streaming, selection, and rendering of complex, long-form, interactive text such as Markdown in real time.

What are developers using instead of native SDKs?

Many are turning to web-based frameworks like Electron, which offer better performance, flexibility, and control over complex UI features, including Markdown rendering and message selection.

Will Apple improve native SDKs for these features?

It is currently unclear whether future updates will address these limitations. The ongoing trend suggests that web technologies will remain a popular choice for complex text applications for the foreseeable future.

You May Also Like

Software Engineering At Google & CS Education With Titus Winters

Former Google engineer Titus Winters discusses large-scale refactoring, testing, AI productivity and why computer science education needs revision.

Which Is the Better Watch Display: MIP vs. AMOLED

Comparing MIP and AMOLED watch displays: durability, visibility, battery life, and user experience explained for shoppers and tech enthusiasts.

Microsoft Word For Windows 1.1A, Native X64 Port

Microsoft has released Word for Windows 1.1a with native support for x64 architecture, enhancing performance on modern systems.

Triton: DirectX 11 Driver For QEMU

Triton introduces a DirectX 11 driver for QEMU, enabling improved graphics performance in virtual machines. Development is ongoing with further updates expected.