16 karma · joined July 28, 2014
> It is not useful, at all for building apps. Apps (as in, mobile apps) cannot be rendered on the sever. You need an api.
Yet.
React Server Components as a pattern and paradigm are not unique to web sites and the team has designed it with React Native in mind. We are just starting with web to flesh out the ideas and work with the ecosystem first.
RSCs (and SSR) are both technologies totally possible to use with RN, theoretically, we just haven’t built out the support yet. At the most basic, instead of rendering to HTML that the server sends down, it would render to commands that React Native’s native code would execute. Similar to the distinction between React DOM and React Native.
So we are excited about these technologies even though they are currently web only, and it’ll still be a while until we bring them to React Native.
Evan Bacon from Expo also experimented with RSC for React Native: https://x.com/baconbrix/status/1629909713910480898?s=46
React Native’s first principle is meeting user’s expectations of the platform. https://reactnative.dev/blog/2020/07/17/react-native-princip...
Since the platform doesn’t provide shadow support, React Native can’t provide that support on Android either. React Native’s shadow API works for the platforms that do support it, like iOS, Windows, and macOS.
Disclaimer: I work on React Native.
From quick glance, this seems more related to Metro, the packager that React Native uses. It was split out from the React Native repo and the team working on it is extremely receptive. I'd recommend opening a new issue on https://github.com/facebook/metro and linking to the issue in the RN repo.
I have built a similar tool that is also an HTML5 / Canvas collaborative drawing app which uses Google Drive for storage and has no server code beyond that. It works offline (and syncs up with collaborators when you come online) and runs in Chrome, Firefox, Safari, iOS, and Android and supports touch. http://thesavior.github.io/draw/