react-native-windows icon indicating copy to clipboard operation
react-native-windows copied to clipboard

Migrate from `react-native-windows-init` to `react-native init-windows` for new RNW projects

Open jonthysell opened this issue 11 months ago • 3 comments

This item tracks all the work necessary to build a new simpler path for creating new RNW projects, with a primary focus of enabling the React Native New Architecture and golden-path supported scenarios.

Tasks

#### Create named "old architecture" templates from existing UWP templates (in `/vnext`)
- [ ] https://github.com/microsoft/react-native-windows/issues/12147
- [ ] https://github.com/microsoft/react-native-windows/issues/12148
- [ ] https://github.com/microsoft/react-native-windows/issues/12149
- [ ] https://github.com/microsoft/react-native-windows/issues/12150
#### Create named "new architecture" templates (in `/vnext`)
- [ ] #11908
- [ ] https://github.com/microsoft/react-native-windows/issues/12171
- [ ] https://github.com/microsoft/react-native-windows/issues/12480
#### Create RNW CLI `init-windows` command  (in `/packages/@react-native-windows/cli`)
- [ ] https://github.com/microsoft/react-native-windows/issues/12151
- [ ] https://github.com/microsoft/react-native-windows/issues/12152
- [ ] Add functionality for `init-windows` to list available templates (with descriptions?)
- [ ] Add functionality for `init-windows` to specify callbacks to be called with a given template, and some common utilities (like modifying package.json or jest/metro configuration files, rather than stamping over them)
- [ ] Expose `initWindowsInternal()` such that other scripts could call it directly
#### Stop using `react-native-windows-init`
- [ ] Put checks in `react-native-windows-init` to prevent trying to target newer RN / RNW versions and give useful error messages to the user
- [ ] Delete the `jobs/cli-init.yml` jobs still calling `react-native-windows-init`
#### Documentation / Samples
- [ ] https://github.com/microsoft/react-native-windows/issues/13394
- [ ] Update samples upgrade steps / CI to use the new `react-native init-windows`
- [ ] Remove references to deprecated CLI arguments (refer to using `ExperimentalFeatures.props` where appropriate)
- [ ] Add upgrade documentation for users attempting to transition old apps to the new templates using `react-native init-windows`
#### Deprecate and remove old code
- [ ] #11744
- [ ] After RNW Paper is no longer supported, delete the old template code from RNW
- [ ] After RNW Paper is no longer supported, delete the `react-native-windows-init` package all together

jonthysell avatar Jul 20 '23 18:07 jonthysell