- You can find the rewrite of
react-native/Libraries
inBRIDGE
folder. - A rewrite of
@react-native/js-polyfills
can be found atBRIDGE/_EXTERNAL/js-polyfills
. - A rewrite of
invariant
can be found atBRIDGE/_EXTERNAL/invariant
. - A rewrite of
nullthrows
can be found atBRIDGE/_EXTERNAL/nullthrows
.
I'm not sure where I'm going at all with this project, as said previously, this is an experiment and will probably never become a real thing.
Also, for now I'm not focusing on writing good code, I just want a PoC. Finally, only Android is supported as of right now since I don't have any Apple product to test on.
-
Core
-
Devtools
-
parseErrorStack
-
parseHermesStack
-
symbolicateStackTrace
-
getDevServer
-
-
InitializeCore
: missing setup functions -
ExtendedError
-
ExceptionsManager
: missing a fewrequire
-
NativeExceptionsManager
-
setUpGlobals
-
setUpBatchedBridge
: still a lot of modules required missing -
setUpErrorHandling
-
setUpPerformance
: for now onlyperformance.now
is implemented ->Date.now
fallback -
setUpTimers
-
-
ReactNative
(we keep the naming for now, even if it should beSolidNative
)-
AppContainer
: no view components yet -
AppRegistry
: a lot is missing -
FabricUIManager
-
getNativeComponentAttributes
: missing a lot of imports -
NativeUIManager
-
renderApplication
: a lot of stuff commented, just for PoC -
RendererProxy
: fabric only -
RootTag
: react context replaced with solid -
UIManager
-
-
Utilities
-
Platform
(types) -
stringifySafe
: (default
export) -
warnOnce
: (default
export) -
RCTLog
(default
export) -
LoadingView
-
NativeDevLoadingView
-
NativePlatformConstantsAndroid
-
defineLazyObjectProperty
: (default
export) -
deepFreezeAndThrowOnMutationInDev
: notdefault
exported, uses CJSmodule.exports
-
HMRClient
: WebSocket not defined in window ?
-
-
Renderer
: for now, onlyprod
files are going to be implemented-
implementations
-
ReactFabric
-
-
shims
-
ReactFabric
-
ReactNativeTypes
: converted to SolidJS types -
ReactNativeViewConfigRegistry
-
-
-
Performance
-
WebPerformance
-
Performance
: missing imports -
PerformanceEntry
-
RawPerformanceEntry
: missing imports -
PerformanceEventTiming
-
-
WebSocket
-
WebSocket
-
WebSocketEvent
-
WebSocketInterceptor
: types are incorrect (?) -
NativeWebSocketModule
-
-
LogBox
-
BatchedBridge
-
BatchedBridge
-
MessageQueue
: should rework imports -
NativeModules
-
-
TurboModule
(withoutsamples
folder) -
Network
-
fetch
: useswhatwg-fetch
-
-
StyleSheet
-
StyleSheet
(types) -
normalizeColor
: missingStyleSheet
type -
processColor
: missingStyleSheet
type -
processAspectRatio
-
PlatformColorValueTypes
(types)-
Android
: missingStyleSheet
type
-
-
-
Types
-
RootTagTypes
-
UIManagerJSInterface
-
ReactDevToolsTypes
-
CoreEventTypes
-
CodegenTypes
-
-
EventEmitter
-
NativeEventEmitter
-
RCTDeviceEventEmitter
-
RCTEventEmitter
-
RCTNativeAppEventEmitter
-
-
NativeModules/specs
-
NativeAnimationsDebugModule
-
NativeDevMenu
-
NativeDevSettings
-
NativeDeviceEventManager
-
NativeDialogManagerAndroid
-
NativeLogBox
-
NativeRedBox
-
NativeSourceCode
-
-
NativeComponent
: still too early to work on this-
NativeComponentRegistry
: missing crucial types -
PlatformBaseViewConfig
: missing crucial types -
ViewConfig
: missing crucial types
-
-
Components
: still too early to work on this -
vendor
-
core
-
ErrorUtils
: (no types needed, already included thanks to TS)
-
-
emitter
-
-
core
-
setUpDOM
-
-
webapis/dom
-
geometry
-
DOMRect
-
DOMRectReadOnly
-
-
nodes
-
oldstylecollections
(?)
-
-
specs
App can't load anything as of right now, a lot of things are missing.
Currently based on this commit of react-native
.