Expo Aug 18, 2026

Building a native-first social platform with Expo

Article Summary

Aras Diler built a production social platform with Siri integration, on-device AI, and iOS widgets as a solo developer. His secret? Treating Expo as the architecture, not just a starting point.

Diler spent two years building udictio, a collaborative social dictionary where contributions stay permanently attached to topics instead of disappearing into feeds. The app now handles thousands of entries while integrating deeply with iOS 26 features, all without abandoning the Expo workflow.

Key Takeaways

Critical Insight

A solo developer shipped a deeply native iOS app with Siri, widgets, and on-device AI while keeping Expo as the single source of truth through strategic use of config plugins and narrow native boundaries.

The article reveals a critical lifecycle bug that only appeared on real iPhones and explains exactly how to architect App Intents that survive background execution.

About This Article

Problem

Aras Diler ran into trouble keeping widget timeline data serializable across property-list storage in the shared App Group. Values like undefined, NaN, and non-serializable objects couldn't be persisted.

Solution

Diler created a buildWidgetProps function that sanitizes topic data by converting values to strings, finite numbers, and truncated integers. He also added a development readback step to verify the data actually made it to the shared container.

Impact

The widget now works across small, medium, and large families in light, dark, tinted, and vibrant rendering modes without timeline persistence failures.