diff --git a/packages/detox/README.md b/packages/detox/README.md index 360d75222f376..f16d774314f08 100644 --- a/packages/detox/README.md +++ b/packages/detox/README.md @@ -1,80 +1,13 @@ -# Detox Plugin for Nx +

Nx - Smart, Fast and Extensible Build System

-[![License](https://img.shields.io/npm/l/@nrwl/workspace.svg?style=flat-square)]() -[![NPM Version](https://badge.fury.io/js/%40nrwl%2Fdetox.svg)](https://www.npmjs.com/@nrwl/detox) -[![Join the chat at https://gitter.im/nrwl-nx/community](https://badges.gitter.im/nrwl-nx/community.svg)](https://gitter.im/nrwl-nx/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) -[![Join us @nrwl/community on slack](https://img.shields.io/badge/slack-%40nrwl%2Fcommunity-brightgreen)](https://join.slack.com/t/nrwlcommunity/shared_invite/enQtNzU5MTE4OTQwOTk0LTgxY2E0ZWYzMWE0YzA5ZDA2MWM1NDVhNmI2ZWMyYmZhNWJiODk3MjkxZjY3MzU5ZjRmM2NmNWU1OTgyZmE4Mzc) +{{links}} - +
-## Table of Contents +# Nx: Smart, Fast and Extensible Build System - - +Nx is a next generation build system with first class monorepo support and powerful integrations. -- [Setup](#setup) - - [Install applesimutils (Mac only)](#install-applesimutils-mac-only) - - [Install Jest Globally](#install-jest-globally) - - [Commands](#commands) - - [Manually Add E2E Folder](#manually-add-e2e-folder) - - [Change Testing Simulator/Emulator](#change-testing-simulatoremulator) -- [Learn more](#learn-more) +This package is a [Detox plugin for Nx](https://nx.dev/detox/overview). - - -## Setup - -#### Install applesimutils (Mac only) - -[applesimutils](https://github.com/wix/AppleSimulatorUtils) is a collection of utils for Apple simulators. - -```sh -brew tap wix/brew -brew install applesimutils -``` - -#### Install Jest Globally - -```sh -npm install -g jest -``` - -### Commands - -Note: For e2e tests to work, the app must be running (`nx start `). A built app must exist before run test commands. - -- `nx build-ios `: build the iOS app (Mac only) -- `nx test-ios `: run e2e tests on the built iOS app (Mac only) -- `nx build-ios --prod` and `nx test-ios --prod`: build and run release version of iOS app. Note: you might need open the xcode project under iOS and choose a team under "Sign & Capabilities". -- `nx build-android `: build the android app -- `nx test-android `: run e2e tests on the built android app -- `nx build-android --prod` and `nx test-android --prod`: build and run release version of android app. - -### Manually Add E2E Folder - -A `` folder is automatically generated when you create a react native app. However, if you want to add e2e folder manually, you need to: - -- Install @nrwl/detox - - ```sh - # Using npm - npm install --save-dev @nrwl/detox - - # Using yarn - yarn add -D @nrwl/detox - ``` - -- Run `nx generate @nrwl/detox:app ` -- Follow instructions https://github.com/wix/Detox/blob/master/docs/Introduction.Android.md to manully change android files. - -### Change Testing Simulator/Emulator - -For iOS, in terminal, run `xcrun simctl list` to view a list of simulators on your Mac. To open your active simulator, `run open -a simulator`. In `/.detoxrc.json`, you could change the simulator under `devices.simulator.device`. - -For Android: in terminal, run `emulator -list-avds` to view a list of emulators installed. To open your emulator, run `emulator -avd `. In `/.detoxrc.json`, you could change the simulator under `devices.emulator.device`. - -To override the device name specified in a configuration, you could use `--device-name` option: `nx test-ios --device-name "iPhone 11"`. - -## Learn more - -Visit the [Nx Documentation](https://nx.dev) to learn more. +{{content}} diff --git a/packages/react-native/README.md b/packages/react-native/README.md index aca07385fe247..1748f9b1e540f 100644 --- a/packages/react-native/README.md +++ b/packages/react-native/README.md @@ -1,193 +1,13 @@ -

Nx - Smart, Fast and Extensible Build System

+

Nx - Smart, Fast and Extensible Build System

{{links}}
-# React Native Plugin for Nx +# Nx: Smart, Fast and Extensible Build System -{{what-is-nx}} +Nx is a next generation build system with first class monorepo support and powerful integrations. -{{getting-started}} +This package is a [React Native plugin for Nx](https://nx.dev/react-native/overview). -## Table of Contents - - - - -- [Getting started](#getting-started) - - [Create a new Nx workspace:](#create-a-new-nx-workspace) - - [Install React Native plugin](#install-react-native-plugin) - - [Create an app](#create-an-app) - - [Start the JavaScript bundler](#start-the-javascript-bundler) - - [Run on devices](#run-on-devices) - - [Release build](#release-build) - - [Test/lint the app](#testlint-the-app) - - [E2e test the app](#e2e-test-the-app) - - [Setup](#setup) - - [Install applesimutils (Mac only)](#install-applesimutils-mac-only) - - [Install Jest Globally](#install-jest-globally) - - [Commands](#commands) - - [Manually Add E2E Folder](#manually-add-e2e-folder) - - [Change Testing Simulator/Emulator](#change-testing-simulatoremulator) -- [Using components from React library](#using-components-from-react-library) -- [CLI Commands and Options](#cli-commands-and-options) - - [`start`](#start) - - [`--port [number]`](#--port-number) - - [`run-ios`](#run-ios) - - [`--port [number]`](#--port-number-1) - - [`--install`](#--install) - - [`--sync`](#--sync) - - [`run-android`](#run-android) - - [`--port [number]`](#--port-number-2) - - [`--sync`](#--sync-1) - - [`sync-deps`](#sync-deps) - - [`--include [string]`](#--include-string) -- [Learn more](#learn-more) -- [Contributing](#contributing) -- [Debugging](#debugging) - - - -## Getting started - -### Create a new Nx workspace: - -```sh -npx create-nx-workspace --cli=nx --preset=empty -``` - -### Install React Native plugin - -```sh -# Using npm -npm install --save-dev @nrwl/react-native - -# Using yarn -yarn add -D @nrwl/react-native -``` - -### Create an app - -```sh -npx nx g @nrwl/react-native:app -``` - -When using Nx, you can create multiple applications and themes in the same workspace. If you don't want to prefix your commands with npx, install `@nrwl/cli` globally. - -### Start the JavaScript bundler - -```sh -npx nx start -``` - -This will start the bundler at `http://localhost:8081`. - -### Run on devices - -Make sure the bundler server is running. - -**Android:** - -```sh -npx nx run-android -``` - -**iOS:** (Mac only) - -```sh -npx nx run-ios --install -``` - -Note: The `--install` flag installs Xcode dependencies before building the iOS app. This option keeps dependencies up to date. - -### Release build - -**Android:** - -```sh -npx nx build-android -``` - -**iOS:** (Mac only) - -No CLI support yet. Run in the Xcode project. See: https://reactnative.dev/docs/running-on-device - -### Test/lint the app - -```sh -npx nx test -npx nx lint -``` - -## Using components from React library - -You can use a component from React library generated using Nx package for React. Once you run: - -```sh -npx nx g @nrwl/react-native:lib ui-button -``` - -This will generate the `UiButton` component, which you can use in your app. - -```jsx -import { UiButton } from '@myorg/ui-button'; -``` - -## CLI Commands and Options - -Usage: - -```sh -npx nx [command] [app] [...options] -``` - -### `start` - -Starts the JS bundler that communicates with connected devices. - -#### `--port [number]` - -The port to listen on. - -### `run-ios` - -Builds your app and starts it on iOS simulator. - -#### `--port [number]` - -The port of the JS bundler. - -#### `--install` - -Install dependencies for the Xcode project before building iOS app. - -#### `--sync` - -Sync app dependencies to its `package.json`. On by default, use `--no-sync` to turn it off. - -### `run-android` - -Builds your app and starts it on iOS simulator. - -#### `--port [number]` - -The port of the JS bundler. - -#### `--sync` - -Sync app dependencies to its `package.json`. On by default, use `--no-sync` to turn it off. - -### `sync-deps` - -Sync app dependencies to its `package.json`. - -#### `--include [string]` - -A comma-separate list of additional packages to include. - -e.g. `nx sync-deps [app] --include react-native-gesture,react-native-safe-area-context` - -## Learn more - -Visit the [Nx Documentation](https://nx.dev) to learn more. +{{content}}