@@ -8,7 +8,7 @@ title: React Native
88by Facebook. While it is really popular among mobile platforms, developers can also target Windows
99and macOS (more about this later).
1010React Native is used not only at Facebook, but also at other large companies such as
11- [ Microsoft] [ MS RN ] , [ Shopify] [ Shopify RN ] , and [ Pinterest] [ Pinterest RN ] .
11+ [ Microsoft] [ ms rn ] , [ Shopify] [ shopify rn ] , and [ Pinterest] [ pinterest rn ] .
1212
1313To better understand how React Native works we should look at [ React] , a JavaScript library
1414developed by Facebook for building user interfaces. React uses a Virtual DOM (VDOM), a
@@ -18,7 +18,7 @@ maps the elements of the UI to platform controls instead of the browser DOM. Thi
1818to reuse their React web skills to create applications. Its moto is “Learn once, write anywhere”.
1919
2020::: info
21- The [ Document Object Model (DOM)] [ DOM ] is a concept from the web browsers. The DOM treats an HTML
21+ The [ Document Object Model (DOM)] [ dom ] is a concept from the web browsers. The DOM treats an HTML
2222document as a tree structure wherein each node is an object representing a part of the document.
2323While React Native uses the concept of VDOM, there is no "real" DOM in React Native.
2424:::
@@ -31,20 +31,20 @@ can use [Grid] and [Flexbox] for layout on the web, but only the later on React
3131
3232## Summary
3333
34- | Characteristic | |
35- | -------------- | :----: |
36- | Website | [ {{technologies.react-native.url}}] ( {{technologies.react-native.url}} ) |
37- | Platforms | Mobile, Desktop |
38- | Rendering strategy | [ Platform controls] |
39- | Code License | [ {{technologies.react-native.codeLicense}}] |
40- | Copyright | Facebook |
41- | Documentation | [ {{technologies.react-native.documentation}}] ( {{technologies.react-native.documentation}} ) |
42- | Community | [ {{technologies.react-native.community}}] ( {{technologies.react-native.community}} ) |
43- | Latest version | {{technologies.react-native.releases.0.version}} |
44- | Release cadence | N/A |
45- | Release support | Latest version |
46- | Update model | Developer driven |
47- | Governance model | Facebook is the ultimate decission maker |
34+ | Characteristic | |
35+ | ------------------ | :----------------------------------------------------------------------------------------- ----: |
36+ | Website | [ {{technologies.react-native.url}}] ( {{technologies.react-native.url}} ) |
37+ | Platforms | Mobile, Desktop |
38+ | Rendering strategy | [ Platform controls] |
39+ | Code License | [ {{technologies.react-native.codeLicense.name }}] ( {{technologies.react-native.codeLicense.url}} ) |
40+ | Copyright | Facebook |
41+ | Documentation | [ {{technologies.react-native.documentation}}] ( {{technologies.react-native.documentation}} ) |
42+ | Community | [ {{technologies.react-native.community}}] ( {{technologies.react-native.community}} ) |
43+ | Latest version | {{technologies.react-native.releases.0.version}} |
44+ | Release cadence | N/A |
45+ | Release support | Latest version |
46+ | Update model | Developer driven |
47+ | Governance model | Facebook is the ultimate decission maker |
4848
4949** Platform support:**
5050
@@ -53,7 +53,7 @@ can use [Grid] and [Flexbox] for layout on the web, but only the later on React
5353::: caution
5454Windows and macOS are considered out-of-tree platforms React Native platforms. Developers need to
5555download the packages ` react-native-windows ` and/or ` react-native-macos ` (developed
56- by Microsoft) to target them. You can learn more in [ React Native for Windows + macOS] [ RN desktop] .
56+ by Microsoft) to target them. You can learn more in [ React Native for Windows + macOS] [ rn desktop] .
5757:::
5858
5959** Language support:**
@@ -80,8 +80,9 @@ can have breaking changes.
8080
8181## Governance
8282
83- While React Native is OSS ([ MIT] licensed) and has contributors from different companies, the
84- ultimate decission maker is Facebook.
83+ While React Native is OSS
84+ [ {{technologies.react-native.codeLicense.name}}] ( {{technologies.react-native.codeLicense.url}} )
85+ licensed) and has contributors from different companies, the ultimate decission maker is Facebook.
8586
8687## Internals
8788
@@ -124,44 +125,44 @@ again over the bridge.
124125<!-- Diagram of messages being sent -->
125126
126127To address some of the concerns lined out earlier, the React Native Core team is working on removing
127- the “bridge” and replace it with a [ new renderer] [ Fabric ] , called Fabric, and a new mechanism to
128+ the “bridge” and replace it with a [ new renderer] [ fabric ] , called Fabric, and a new mechanism to
128129communicate the JavaScript thread with native modules, called TurboModules.
129130This will allow, among other things, opt-in synchronous actions between the JavaScript thread and
130131the UI and native modules.
131132
132133::: tip
133- In [ July 2021] [ Facebook fabric] Facebook announced that all its screens are using Fabric already. It
134+ In [ July 2021] [ facebook fabric] Facebook announced that all its screens are using Fabric already. It
134135is expected this feature will be enabled in the React Native's open source version in the near
135136future.
136137:::
137138
138139::: note
139140The following sources where used for this section:
140141
141- * [ React Native Guide]
142- * [ The New React Native Architecture Explained: Part Three] by [ Lorenzo Sciandra]
143- * [ React Native Reanimated]
144- :::
142+ - [ React Native Guide]
143+ - [ The New React Native Architecture Explained: Part Three] by [ Lorenzo Sciandra]
144+ - [ React Native Reanimated]
145+ :::
145146
146147<!-- Ref links -->
147148
148- [ DOM ] : https://en.wikipedia.org/wiki/Document_Object_Model
149- [ Embedded browser engine] : ./browser-engine.md#embedded-browser-engine
150- [ Facebook Fabric ] : https://twitter.com/joshuaisgross/status/1415099495285608453
151- [ Fabric ] : https://reactnative.dev/blog/2018/06/14/state-of-react-native-2018
152- [ Flexbox ] : https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/GridsS_layout/Flexbox
153- [ Grid ] : https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Grids
154- [ JSX ] : https://reactjs.org/docs/introducing-jsx.html
155- [ Lorenzo Sciandra ] : https://twitter.com/Kelset
156- [ {{technologies.react-native.codeLicense }} ] : https://github.com/facebook/react-native/blob/main/LICENSE
157- [ MS RN ] : https://twitter.com/safaiyeh/status/1219294459298344961
158- [ Pinterest RN ] : https://medium.com/pinterest-engineering/supporting-react-native-at-pinterest-f8c2233f90e6
159- [ Platform controls] : ./platform-controls.md
160- [ React ] : https://reactjs.org/
161- [ React Native ] : https://reactnative.dev
162- [ React Native Guide ] : https://www.reactnative.guide/3-react-native-internals/3.1-react-native-internals.html
163- [ React Native Reanimated ] : https://docs.swmansion.com/react-native-reanimated/docs/
164- [ RN desktop] : https://microsoft.github.io/react-native-windows/
165- [ RN code] : https://github.com/facebook/react-native
166- [ Shopify RN ] : https://engineering.shopify.com/blogs/engineering/react-native-future-mobile-shopify
167- [ The New React Native Architecture Explained: Part Three ] : https://formidable.com/blog/2019/fabric-turbomodules-part-3/
149+ [ dom ] : https://en.wikipedia.org/wiki/Document_Object_Model
150+ [ embedded browser engine] : ./browser-engine.md#embedded-browser-engine
151+ [ facebook fabric ] : https://twitter.com/joshuaisgross/status/1415099495285608453
152+ [ fabric ] : https://reactnative.dev/blog/2018/06/14/state-of-react-native-2018
153+ [ flexbox ] : https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/GridsS_layout/Flexbox
154+ [ grid ] : https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Grids
155+ [ jsx ] : https://reactjs.org/docs/introducing-jsx.html
156+ [ lorenzo sciandra ] : https://twitter.com/Kelset
157+ [ {{technologies.react-native.codelicense }} ] : https://github.com/facebook/react-native/blob/main/LICENSE
158+ [ ms rn ] : https://twitter.com/safaiyeh/status/1219294459298344961
159+ [ pinterest rn ] : https://medium.com/pinterest-engineering/supporting-react-native-at-pinterest-f8c2233f90e6
160+ [ platform controls] : ./platform-controls.md
161+ [ react ] : https://reactjs.org/
162+ [ react native ] : https://reactnative.dev
163+ [ react native guide ] : https://www.reactnative.guide/3-react-native-internals/3.1-react-native-internals.html
164+ [ react native reanimated ] : https://docs.swmansion.com/react-native-reanimated/docs/
165+ [ rn desktop] : https://microsoft.github.io/react-native-windows/
166+ [ rn code] : https://github.com/facebook/react-native
167+ [ shopify rn ] : https://engineering.shopify.com/blogs/engineering/react-native-future-mobile-shopify
168+ [ the new react native architecture explained: part three ] : https://formidable.com/blog/2019/fabric-turbomodules-part-3/
0 commit comments