react-native-windows/packages
React-Native-Windows Bot 87401ce73f applying package updates ***NO_CI*** 2024-05-27 15:13:40 +00:00
..
@office-iss applying package updates ***NO_CI*** 2024-05-27 15:13:40 +00:00
@react-native [0.71] Integrate RN 0.71.19 (#13246) 2024-05-20 12:58:43 -07:00
@react-native-windows applying package updates ***NO_CI*** 2024-05-27 15:13:40 +00:00
@rnw-scripts [0.71] Integrate RN 0.71.19 (#13246) 2024-05-20 12:58:43 -07:00
debug-test applying package updates ***NO_CI*** 2023-06-23 18:19:58 +00:00
e2e-test-app applying package updates ***NO_CI*** 2024-05-27 15:13:40 +00:00
integration-test-app applying package updates ***NO_CI*** 2024-05-27 15:13:40 +00:00
playground applying package updates ***NO_CI*** 2024-05-27 15:13:40 +00:00
react-native-platform-override applying package updates ***NO_CI*** 2023-06-23 18:19:58 +00:00
react-native-windows-init applying package updates ***NO_CI*** 2023-09-26 21:16:00 +00:00
sample-apps applying package updates ***NO_CI*** 2024-05-27 15:13:40 +00:00
README.md Remove unused bot work (#9186) 2021-11-24 01:37:13 -08:00

README.md

This directory contains the npm packages hosted by the react-native-windows repo.

Scoped Packages

Several packages are organized into specific package scopes:

  • @office-iss: Office internal packages
  • @react-native: Copies of private upstream packages already using the @react-native scope. E.g. @react-native/tester for the RNTester package.
  • @react-native-windows: Internal packages used by react-native-windows itself. Versioned and published alongside RNW.
  • @rnw-scripts: Scripts for repository tooling. Published as part of the main branch.

Unscoped packages

Several packages do not belong to a scope for intentional (or historical) reasons. E.g. react-native-platform-override isn't RNW-specific and is unscoped. react-native-windows-init is run by name, and as such makes sense to be unscoped.

Adding a new scope

⚠ Caution: Failing to create and give access to an NPM organization will break CI.

New package scopes for related packages can be added by adding a new directory with the scope name and prefixing the packages name in package.json with the scope.

E.g. for packages/@example-scope/create-widgets/package.json:

{
  "name": "@example-scope/create-widgets",
  ...
}

After adding a scope directory, add the scope to the list of yarn workspaces in the repo-root package.json.

  "workspaces": {
    "packages": [
      ...
      "packages/@example-scope/*",
      ...
    ]
  },

Publishing a scoped package requires that the rnbot NPM user is an owner of an npm organization with the same name as the scope. You can check whether an organization exists by viewing npmjs.com/org/. See acoates for granting permissions to rnbot.