-
Notifications
You must be signed in to change notification settings - Fork 0
Description
[WIP umbrella issue for discussion/ideas, to help surface proposals]
What counts as a React platform?
Is using react-reconciler enough to count as a platform? Or does react-test-renderer count, for the case of react-sketchapp?
Will Metro be an explicit requirement, or will Webpack/ be supported as entrypoint bundlers?
- Some runtime environments may be in sandboxes where running bundlers like Metro aren't appropriate, such as in design software plugins, where file extensions are nice as a universally accepted standard across bundlers, especially with Babel extension preferences.
- Should file extensions remain a stable/supported default for out-of-tree platforms?
How should imports work?
- Is
import { ... } from 'react-native';a safe pattern for out-of-tree platforms? - How can we make sure that props are types without
tsconfighacks?
Proposal
Standardise platform-specific imports around react-native-ios, react-native-windows, or @react-native/ios.
Support react-native as a common API surface across platforms, or have react-platform/react-primitives as a common API layer that maps to react-native-windows, etc. Or have react-primitives for react-reconciler platforms that don't have the full Metro/Fabric setup (e.g. react-primitives View import aliases to react-native-<platform> <View>, and react-native for those that do.