TL;DR
A seasoned macOS/iOS developer highlights persistent limitations of native frameworks for complex text handling, explaining why many opt for web-based solutions. The challenge lies in performance, feature parity, and user experience.
A seasoned macOS and iOS developer has publicly detailed ongoing challenges with native SDKs for complex text rendering, explaining why many developers are turning to web-based solutions for rich text and chat apps despite platform-native options.
The developer attempted to build a simple Markdown-enabled chat app using native frameworks like SwiftUI, AppKit, and TextKit 2, but encountered significant limitations. SwiftUI provided acceptable performance for simple screens but failed to support complex text selection and interaction. Transitioning to NSTextView improved some aspects but introduced performance issues, especially with streaming text. Native components like NSCollectionView and TextKit 2 exhibited design limitations, such as blinking cells and poor streaming performance, making feature parity with basic macOS behaviors difficult.
Eventually, the developer turned to WebKit, which handled Markdown rendering, text selection, and performance much better out of the box. Web-based solutions provided native-like performance and typography control, along with seamless macOS integrations, which native frameworks struggled to match. The process highlighted that native SDKs, despite being mature and well-understood, are inadequate for building complex, long-form rich text chat interfaces that include features like context menus, dictionary lookup, accessibility, and dynamic text interactions.
Why It Matters
This account underscores a broader industry trend: native SDKs for macOS and iOS are increasingly insufficient for advanced text features in modern apps. Developers face significant hurdles in achieving performance, feature parity, and user experience, leading many to adopt web-based solutions like Electron or React Native. This shift impacts app design choices, platform reliance, and development strategies, especially for chat, long-form content, and rich text interfaces.
Markdown-enabled chat app development tools
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
Background
For years, native development on Apple platforms has been favored for performance and tight integration. However, as applications grow more complex — requiring streaming, rich text, and advanced interactions — native frameworks reveal limitations. Developers have historically patched these gaps with workarounds, but these solutions often introduce new problems, such as performance degradation and inconsistent behavior. The rise of web-based frameworks like Electron, which leverage Chromium, offers a more reliable and feature-rich alternative for complex text rendering and interaction, despite concerns about resource use and platform purity.
“I still cannot make a simple thing work properly: a chat with Markdown & the ability to select a whole message. And suddenly it becomes much clearer why most new chat-heavy apps are web-based.”
— Anonymous developer on Hacker News
“WebKit works. Performance is good. Typography is almost perfect. You can even render fancy Git diffs with a few lines of code.”
— Developer account from Hacker News
Rich text editing SDKs for macOS
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
What Remains Unclear
It is not yet clear whether future updates to native SDKs will address these limitations or if a fundamental shift toward web-based frameworks will continue. The long-term viability of native solutions for complex, long-form, interactive text remains uncertain, as current efforts often fall short of expectations.
Web-based text rendering components
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
What’s Next
Developers may continue to favor web-based frameworks for complex text and chat applications, or platform providers might introduce new native features to bridge current gaps. Monitoring updates to SwiftUI, TextKit, and WebKit will be essential to assess whether native development can once again support these advanced use cases effectively.
Electron framework for chat applications
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
Key Questions
Why are native SDKs failing for complex text applications?
Native SDKs like SwiftUI, TextKit, and AppKit are designed for general UI components and simple interactions. They lack the performance and flexibility needed for streaming, complex selection, and advanced typography in long-form or chat applications.
What advantages do web-based solutions like Electron offer?
Web-based frameworks leverage Chromium’s mature rendering engine, providing reliable performance, rich text handling, and seamless platform integrations, often surpassing native SDKs in complex text scenarios.
Are native SDKs likely to improve in this area?
It remains uncertain. While platform providers may enhance SDKs, current limitations suggest that many developers will continue to prefer web solutions for complex text and chat apps until native frameworks evolve significantly.
Does this mean native development is obsolete for chat apps?
Not necessarily, but for complex, feature-rich, long-form chat and text applications, native SDKs currently fall short. Developers must weigh performance, features, and development effort when choosing their approach.