Skip to content

Format fabric-renderer.md#2901

Merged
sammy-SC merged 2 commits intofacebook:fabric-architecturefrom
sammy-SC:fabric-architecture-fabric-renderer
Dec 23, 2021
Merged

Format fabric-renderer.md#2901
sammy-SC merged 2 commits intofacebook:fabric-architecturefrom
sammy-SC:fabric-architecture-fabric-renderer

Conversation

@sammy-SC
Copy link
Contributor

@sammy-SC sammy-SC commented Dec 23, 2021

screencapture-localhost-3000-docs-next-fabric-renderer-2021-12-23-15_12_57

@sammy-SC sammy-SC merged commit 8203680 into facebook:fabric-architecture Dec 23, 2021
@sammy-SC sammy-SC deleted the fabric-architecture-fabric-renderer branch December 23, 2021 16:58
---

Fabric is React Native's new rendering system. It is designed to improve interoperability with mobile platforms and to unlock new capabilities. Fabric is a conceptual evolution of the render system currently used by React Native. The core principle is to unify more render logic in C++ versus spread across the different [host platforms](glossary#host-platform).
Fabric is React Native's new rendering system. It was designed, built, and rolled out at Meta between 2018 and 2021. It is conceptual evolution of the legacy render system. The core principles are to unify more render logic in C++, improve interoperability with [host platforms](glossary#host-platform), and to unlock new capabilities.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some word-smithing suggestions:

Fabric is React Native's new rendering system, a conceptual evolution of the legacy render system. The core principles are to unify more render logic in C++, improve interoperability with host platforms, and to unlock new capabilities for React Native. In 2021, it has been adopted by the majority of React Native surfaces in Meta.


- With improved interoperablity between [host views](glossary#host-view-tree-and-host-view) and React views, Fabric is able to to measure and render React surfaces synchronously. In the legacy architecture, React Native layout was asynchronous which led to a layout “jump” issue when embedding a React Native rendered view in a host platform view.
- With Fabric’s support of multi-priority and synchronous events, the renderer can prioritize certain user interactions to ensure they are handled in a timely manner.
- With improved interoperablity between [host views](glossary#host-view-tree-and-host-view) and React views, the renderer is able to to measure and render React surfaces synchronously. In the legacy architecture, React Native layout was asynchronous which led to a layout “jump” issue when embedding a React Native rendered view in a _host view_.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question about italics, is the idea to italicize every word/concept that's in the glossary that isn't linked to the definition?

sammy-SC added a commit that referenced this pull request Dec 23, 2021
#2892)

* Initial draft of new Architecture Section including docs on how React Native's renderer works

* linting language

* changing the IA for architecture section

* update arc overview

* Iterating on Fabric Architecture docs (#2895)

* Add some intro to 'Render,Commit, and Mount'

* Update Fabric Render -> Fabric Renderer

* Split out rendering-implementation into three different docs

* Create a sentence callout for each

* Fix broken links

* Formatting for view-flattening (#2899)

* Updates to xplat-implementation, re: glossary links and fabric terms (#2898)

* Refactor how we layout the scenarios (#2897)

* Format render-pipeline.md (#2900)

* Format fabric-renderer.md (#2901)

* Format fabric-renderer.md

* Anchor fabric-renderer in time

* Add images to Fabric Deep Dive (#2902)

* Resize images in threading model section (#2903)

* Fabric-rendering word tweaks

* Cut a 0.66 version of the architecture and update header

* Word tweaks

Co-authored-by: Luna <luwe@fb.com>
Co-authored-by: Samuel Susla <samuel.susla@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants