pull down to refresh

Can we talk about how the word native lost all of it's meaning? Neither React "Native" nor Flutter generate native apps!
Traditional native apps meant writing platform-specific code - Swift/Objective-C for iOS, Kotlin/Java for Android. You'd use the platform's own UI components, APIs, and development tools directly. React Native promises "native" experiences while actually running JavaScript in a bridge that translates to platform APIs; Flutter doesn't even use native UI components.
Both React Native and Flutter produce native applications:
React Native apps ship with a JS engine that runs the logic, but the widgets are actually native (OS-supplied).
Flutter compiles the Dart code to native ARM binaries directly (via LLVM, skipping Kotlin and Obj-C) and the views are constructed from custom platform-specific components.
And just because Flutter has custom components doesn't mean it's not "native". There are, for example, multiple frameworks for Windows (MFC, WPF, UWP, Qt, Swing, and many more) - they are just different renderers, but only Windows API/MFC/WinForms could be considered "truly native" (as in, OS-supplied). Noone writes apps using that anymore (because DirectX exists) but we call all those .exe's "native" apps anyway.
reply