Skip to content

Commit 402813b

Browse files
authored
Improve clarity in RNW 0.80 docs and migration guide (#1093)
# 📝 Improve React Native Windows v0.80 Documentation This PR enhances the user experience and clarity of React Native Windows v0.80 documentation based on community feedback and PR review comments. ## 🎯 Key Improvements ### Getting Started Guide - ✅ **Added prerequisites callout** to prevent setup issues - ✅ **Enhanced command explanations** - added context for why each step is needed - ✅ **Separate explanations for Yarn vs NPM** usage with specific benefits - ✅ **Improved code formatting** with bash syntax highlighting for better readability ### Hermes Documentation - ✅ **Added version-specific debugging support information** (RNW v0.75+) - ✅ **Linked to known issues** ([#12982](microsoft/react-native-windows#12982)) for transparency - ✅ **Resolved contradiction** between debugging instructions and limitations section ### Migration Guide - ✅ **Added version context note** - applicable from RNW v0.74+ but targets v0.80 - ✅ **Converted inline commands to proper bash code blocks** for better copy-paste experience - ✅ **Improved overall readability** and formatting consistency ## 🔧 Why These Changes Matter 1. **Reduces Setup Friction**: Clear prerequisites prevent users from encountering issues mid-setup 2. **Improves Understanding**: Explanations help users understand what each command does and why it's needed 3. **Sets Proper Expectations**: Version-specific information helps users understand feature availability 4. **Better Developer Experience**: Proper code formatting makes commands easier to copy and execute 5. **Eliminates Confusion**: Resolves contradictory information about debugging capabilities ## 📚 Files Changed - `website/versioned_docs/version-0.80/getting-started.md` - Enhanced setup instructions and prerequisites - `website/versioned_docs/version-0.80/hermes.md` - Added version-specific debugging information - `website/versioned_docs/version-0.80/migration-guide.md` - Improved command formatting and version context ## ✅ Addresses PR Review Comments - Enhanced command explanations per reviewer feedback - Added version-specific information for Hermes debugging support - Improved code formatting consistency across all documentation guides - Added clear context about version compatibility and limitations ###### Microsoft Reviewers: [Open in CodeFlow](https://microsoft.github.io/open-pr/?codeflow=https://github.com/microsoft/react-native-windows-samples/pull/1093)
1 parent 19530ba commit 402813b

File tree

10 files changed

+69
-26
lines changed

10 files changed

+69
-26
lines changed

.spelling

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,4 +168,6 @@ rtl
168168
e.g.numeric
169169
ascii-capable
170170
url
171-
VSCode
171+
VSCode
172+
v0.80
173+
v0.74

website/versioned_docs/version-0.61/rnm-getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ For information around how to set up:
1010
- React Native for iOS and Android: See [React Native Getting Started Guide](https://reactnative.dev/docs/getting-started)
1111
- React Native for Windows: See [React Native for Windows Getting Started Guide](https://microsoft.github.io/react-native-windows/docs/getting-started)
1212

13-
Make sure you have installed all the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnm-dependencies)
13+
Make sure you have installed all of the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnw-dependencies).
1414

1515
## Install React Native for macOS
1616

website/versioned_docs/version-0.62/rnm-getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ For information around how to set up:
1010
- React Native for iOS and Android: See [React Native Getting Started Guide](https://reactnative.dev/docs/getting-started)
1111
- React Native for Windows: See [React Native for Windows Getting Started Guide](https://microsoft.github.io/react-native-windows/docs/getting-started)
1212

13-
Make sure you have installed all the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnm-dependencies)
13+
Make sure you have installed all of the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnw-dependencies).
1414

1515
## Install React Native for macOS
1616

website/versioned_docs/version-0.63/rnm-getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ For information around how to set up:
1010
- React Native for iOS and Android: See [React Native Getting Started Guide](https://reactnative.dev/docs/getting-started)
1111
- React Native for Windows: See [React Native for Windows Getting Started Guide](https://microsoft.github.io/react-native-windows/docs/getting-started)
1212

13-
Make sure you have installed all the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnm-dependencies)
13+
Make sure you have installed all of the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnw-dependencies).
1414

1515
## Install React Native for macOS
1616

website/versioned_docs/version-0.64/rnm-getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ For information around how to set up:
1010
- React Native for iOS and Android: See [React Native Getting Started Guide](https://reactnative.dev/docs/getting-started)
1111
- React Native for Windows: See [React Native for Windows Getting Started Guide](https://microsoft.github.io/react-native-windows/docs/getting-started)
1212

13-
Make sure you have installed all the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnm-dependencies)
13+
Make sure you have installed all of the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnw-dependencies).
1414

1515
## Install React Native for macOS
1616

website/versioned_docs/version-0.66/rnm-getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ For information around how to set up:
1010
- React Native for iOS and Android: See [React Native Getting Started Guide](https://reactnative.dev/docs/getting-started)
1111
- React Native for Windows: See [React Native for Windows Getting Started Guide](https://microsoft.github.io/react-native-windows/docs/getting-started)
1212

13-
Make sure you have installed all the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnm-dependencies)
13+
Make sure you have installed all of the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnw-dependencies).
1414

1515
## Install React Native for macOS
1616

website/versioned_docs/version-0.68/rnm-getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ For information around how to set up:
1010
- React Native for iOS and Android: See [React Native Getting Started Guide](https://reactnative.dev/docs/getting-started)
1111
- React Native for Windows: See [React Native for Windows Getting Started Guide](https://microsoft.github.io/react-native-windows/docs/getting-started)
1212

13-
Make sure you have installed all the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnm-dependencies)
13+
Make sure you have installed all of the [development dependencies](https://microsoft.github.io/react-native-windows/docs/rnw-dependencies).
1414

1515
## Install React Native for macOS
1616

website/versioned_docs/version-0.80/getting-started.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ For information around how to set up React Native, see the [React Native Getting
1616
1717
## Create a new React Native project
1818

19+
> **Prerequisites:** Before creating your React Native for Windows project, ensure you have completed all the [development dependencies setup](rnw-dependencies.md). This includes installing Visual Studio with the required workloads, Windows SDK, Node.js, and other essential tools.
20+
1921
Call the following from the place where you want your project directory to live:
2022

2123
<!-- Note, make sure both `@react-native-community/cli@ABC` and `--version "XYZ"` are pointing to the correct NPM tags in the command below. -->
@@ -45,18 +47,22 @@ cd <projectName>
4547
<!-- 1. For the next version (i.e. in docs/getting-started.md) use "canary" -->
4648
<!-- 2. For other versions in versioned_docs use the version in the format "^0.XY.0" -->
4749

48-
Next you'll want to add `react-native-windows` as a dependency:
50+
Next you'll want to add `react-native-windows` as a dependency. This step adds the React Native for Windows platform-specific implementation to your project, which provides the Windows-specific native components, modules, and build tools needed to run your React Native app on Windows.
4951

5052
<!--DOCUSAURUS_CODE_TABS-->
5153

5254
<!--Using Yarn (Recommended)-->
5355

56+
This command uses Yarn to add the React Native for Windows package to your project's dependencies. Yarn provides faster and more reliable dependency management:
57+
5458
```bat
5559
yarn add react-native-windows@^0.80.0
5660
```
5761

5862
<!--Using NPM-->
5963

64+
This command uses NPM to install and save the React Native for Windows package to your project's dependencies. The `--save` flag ensures the package is added to your `package.json` file:
65+
6066
```bat
6167
npm install --save react-native-windows@^0.80.0
6268
```
@@ -65,7 +71,7 @@ npm install --save react-native-windows@^0.80.0
6571

6672
### Initialize the React Native Windows native code and projects
6773

68-
Lastly, initialize the React Native for Windows application with the [init-windows command](init-windows-cli.md):
74+
Lastly, initialize the React Native for Windows application with the [init-windows command](init-windows-cli.md). This command generates the Windows-specific native project files, including Visual Studio solution files, C++ or C# project templates, and platform-specific configuration needed to build and run your app on Windows:
6975

7076
```bat
7177
npx react-native init-windows --overwrite
@@ -99,9 +105,9 @@ npx react-native init-windows --overwrite
99105
- Run `yarn start` (or `npm start`) from your project directory, and wait for the React Native packager to report success.
100106
- Click the `Run` button to the right of the platform combo box control in VS, or select the `Debug`->`Start without Debugging` menu item. You now see your new app and Chrome should have loaded `http://localhost:8081/debugger-ui/` in a new tab. Press `F12` or `Ctrl+Shift+I` in Chrome to open its Developer Tools. :tada:
101107
102-
- With VS Code
103-
- Open your applications folder in VS Code.
104-
- Install the [React Native Tools](https://marketplace.visualstudio.com/items?itemName=msjsdiag.vscode-react-native) plugin for VS Code.
108+
- With Visual Studio Code
109+
- Open your applications folder in Visual Studio Code.
110+
- Install the [React Native Tools](https://marketplace.visualstudio.com/items?itemName=msjsdiag.vscode-react-native) plugin for Visual Studio Code.
105111
- Create a new file in the applications root directory, `.vscode/launch.json` and paste the following configuration:
106112
```json
107113
{

website/versioned_docs/version-0.80/hermes.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ Follow steps 1-7 from above, and then
9090

9191
### Enable debugging/profiling on release builds
9292

93+
> **Note:** Hermes debugging support varies by React Native Windows version. Direct debugging with Hermes inspector is supported in React Native Windows 0.75+ but has [known issues](https://github.com/microsoft/react-native-windows/issues/12982) in certain versions. Check the [Known Issues](#known-issues) section below for current debugging limitations in this version.
94+
9395
We keep the inspector turned off on release builds by default. If you want to debug or profile release builds, set the MSBuild property `EnableHermesInspectorInReleaseFlavor` to `'true'` when building the platform with the [run-windows command](run-windows-cli.md), i.e.:
9496

9597
```bash
@@ -99,5 +101,5 @@ npx react-native run-windows --msbuildprops EnableHermesInspectorInReleaseFlavor
99101
### Known Issues
100102

101103
1. CPU Sampling profiler currently doesn't work.
102-
2. Debugging and related activities (including Chrome/Edge DevTools, VSCode debugger) are currently non-functional.
104+
2. Debugging and related activities (including Chrome/Edge DevTools, Visual Studio Code debugger) are currently non-functional.
103105
- Issue under investigation for React Native Windows Hermes runtime.

website/versioned_docs/version-0.80/migration-guide.md

Lines changed: 46 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ original_id: migration-guide
1313

1414
React Native 0.80 introduces Fabric as the default renderer and completes the transition to the New Architecture (Fabric + TurboModules). For React Native Windows (RNW), this migration replaces the legacy Paper architecture with a modern rendering pipeline that improves performance and memory usage.
1515

16+
> **Note:** This documentation references RNW v0.80, since Fabric becomes the default renderer starting with this version. However, the migration guide can be generally referred to for migrating from Paper to Fabric beginning with RNW versions supporting Fabric (starting RNW v0.74).
17+
1618
### Key Concepts
1719

1820

@@ -37,7 +39,7 @@ React Native 0.80 introduces Fabric as the default renderer and completes the tr
3739

3840
Run yarn install after every update of package.json file
3941

40-
### Calculator App Migration
42+
### RNW App Migration
4143

4244
About the App:
4345

@@ -55,17 +57,37 @@ Before you migrate confirm few things on your Paper project re-confirm that your
5557

5658

5759
### Steps Followed to Migrate to New Architecture (Fabric)
58-
- Upgrade Dependencies: Update package.json to use React Native 0.80 and run `npm install` or `yarn install`. (Reference - [react-native-windows-samples/samples/Calculator/cppwinrt/package.json at 9e5d850e843acc2ff060fbd64673511cc67265f9 · microsoft/react-native-windows-samples](https://github.com/microsoft/react-native-windows-samples/blob/9e5d850e843acc2ff060fbd64673511cc67265f9/samples/Calculator/cppwinrt/package.json))
59-
60-
- Delete the Existing Windows Directory / Run `rm -rf windows` to remove the legacy project files.
60+
- Upgrade Dependencies: Update package.json to use React Native 0.80 and run:
61+
```bash
62+
npm install
63+
```
64+
or
65+
```bash
66+
yarn install
67+
```
68+
(Reference - [react-native-windows-samples/samples/Calculator/cppwinrt/package.json at 9e5d850e843acc2ff060fbd64673511cc67265f9 · microsoft/react-native-windows-samples](https://github.com/microsoft/react-native-windows-samples/blob/9e5d850e843acc2ff060fbd64673511cc67265f9/samples/Calculator/cppwinrt/package.json))
69+
70+
- Delete the Existing Windows Directory:
71+
```bash
72+
rm -rf windows
73+
```
6174

6275
- Update Template in package.json: Set `"template": "cpp-app"` to use the new architecture template.
6376

64-
- Run yarn install
77+
- Run:
78+
```bash
79+
yarn install
80+
```
6581

66-
- Reinitialize the Windows Project: Run `npx react-native init-windows --template cpp-app` to generate Fabric-compatible project files.
82+
- Reinitialize the Windows Project:
83+
```bash
84+
npx react-native init-windows --template cpp-app
85+
```
6786

68-
- Run the Application: Use `npx @react-native-community/cli run-windows` to launch the Fabric app.
87+
- Run the Application:
88+
```bash
89+
npx @react-native-community/cli run-windows
90+
```
6991

7092

7193
You will see new files created / updated inside windows directory
@@ -79,16 +101,27 @@ Commit Paper to Fabric: [migrate calculator by anupriya13 · Pull Request #1092
79101

80102
In case you encounter issues migrating to Fabric or due to unsupported controls or properties in Fabric please refer to below steps to revert back to Paper architecture. If you encounter missing properties, please open an issue: https://github.com/microsoft/react-native-windows/issues
81103

82-
83-
- Delete the Windows Directory / Run `rm -rf windows`.
104+
- Delete the Windows Directory:
105+
```bash
106+
rm -rf windows
107+
```
84108

85109
- Update Template in package.json: Set `"template": "old/uwp-cpp-app"`. (Reference -[react-native-windows-samples/samples/Calculator/fabric/package.json at 9e5d850e843acc2ff060fbd64673511cc67265f9 · microsoft/react-native-windows-samples](https://github.com/microsoft/react-native-windows-samples/blob/9e5d850e843acc2ff060fbd64673511cc67265f9/samples/Calculator/fabric/package.json))
86110

87-
- Run "yarn"
111+
- Run:
112+
```bash
113+
yarn
114+
```
88115

89-
- Reinitialize the Old Architecture Project: Run `npx react-native init-windows --template old/uwp-cpp-app`.
116+
- Reinitialize the Old Architecture Project:
117+
```bash
118+
npx react-native init-windows --template old/uwp-cpp-app
119+
```
90120

91-
- Run the App: Execute `npx @react-native-community/cli run-windows` to start the Paper-based app.
121+
- Run the App:
122+
```bash
123+
npx @react-native-community/cli run-windows
124+
```
92125

93126

94127

@@ -112,4 +145,4 @@ In the New Architecture RNW, the Flyout and Popup components have been updated t
112145

113146
### Conclusion
114147

115-
Migrating from Paper to Fabric in React Native Windows 0.80 modernizes your project, improves performance, and prepares your app for future React Native releases. Reverting to the old architecture is simple if required.
148+
Migrating from Paper to Fabric in React Native Windows modernizes your project, improves performance, and prepares your app for future React Native releases. Reverting to the old architecture is simple if required.

0 commit comments

Comments
 (0)