diff --git a/.github/ISSUE_TEMPLATE/BUG_REPORT_NITRO_CORE.yml b/.github/ISSUE_TEMPLATE/BUG_REPORT_NITRO_CORE.yml index d8d4e7a256..3154cc869b 100644 --- a/.github/ISSUE_TEMPLATE/BUG_REPORT_NITRO_CORE.yml +++ b/.github/ISSUE_TEMPLATE/BUG_REPORT_NITRO_CORE.yml @@ -70,7 +70,7 @@ body: attributes: label: Can you reproduce this issue in the Nitro Example app here? description: > - Try to build the example app (`example/`) and see if the issue is reproduceable here. + Try to build the example app (`apps/example/`) and see if the issue is reproduceable here. **Note:** If you don't try this in the example app, I most likely won't help you with your issue. options: - I didn't try (⚠️ your issue might get ignored & closed if you don't try this) diff --git a/.github/ISSUE_TEMPLATE/BUILD_ERROR.yml b/.github/ISSUE_TEMPLATE/BUILD_ERROR.yml index c9b2aaec02..5b004fa7b3 100644 --- a/.github/ISSUE_TEMPLATE/BUILD_ERROR.yml +++ b/.github/ISSUE_TEMPLATE/BUILD_ERROR.yml @@ -76,7 +76,7 @@ body: attributes: label: Can you build the Nitro Modules Example app? description: > - Try to build the example app (`example/`) and see if the issue is reproduceable here. + Try to build the example app (`apps/example/`) and see if the issue is reproduceable here. **Note:** If you don't try to build the example app, I most likely won't help you with your issue. options: - I didn't try (⚠️ your issue might get ignored & closed if you don't try this) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 69ace38278..8664687931 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -14,7 +14,7 @@ updates: - "/packages/react-native-nitro-test/android/" - "/packages/react-native-nitro-test-external/android/" - "/packages/template/android/" - - "/example/android/" + - "/apps/example/android/" schedule: interval: "daily" labels: @@ -47,7 +47,7 @@ updates: - "/packages/react-native-nitro-test/" - "/packages/react-native-nitro-test-external/" - "/packages/template/" - - "/example/" + - "/apps/example/" schedule: interval: "daily" labels: diff --git a/.github/workflows/build-android-release.yml b/.github/workflows/build-android-release.yml index 072a1c6755..4785a1065a 100644 --- a/.github/workflows/build-android-release.yml +++ b/.github/workflows/build-android-release.yml @@ -26,10 +26,10 @@ jobs: java-package: jdk - name: Set minSdk in build.gradle to 26 - run: sed -i "s/minSdkVersion = 24/minSdkVersion = 26/g" example/android/build.gradle + run: sed -i "s/minSdkVersion = 24/minSdkVersion = 26/g" apps/example/android/build.gradle - - name: Run Gradle Build for example/android/ - working-directory: example/android + - name: Run Gradle Build for apps/example/android/ + working-directory: apps/example/android run: | ./gradlew clean :app:assembleRelease --no-daemon --no-build-cache @@ -39,11 +39,11 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ github.event.release.upload_url }} - asset_path: example/android/app/build/outputs/apk/release/app-release.apk + asset_path: apps/example/android/app/build/outputs/apk/release/app-release.apk asset_name: "NitroExample-${{ github.event.release.tag_name }}.apk" asset_content_type: application/vnd.android.package-archive # Gradle cache doesn't like daemons - name: Stop Gradle Daemon - working-directory: example/android + working-directory: apps/example/android run: ./gradlew --stop diff --git a/.github/workflows/build-android.yml b/.github/workflows/build-android.yml index c45ec033e9..e1ce2bd9dc 100644 --- a/.github/workflows/build-android.yml +++ b/.github/workflows/build-android.yml @@ -6,7 +6,7 @@ on: - main paths: - '.github/workflows/build-android.yml' - - 'example/android/**' + - 'apps/example/android/**' - '**/nitrogen/generated/shared/**' - '**/nitrogen/generated/android/**' - 'packages/react-native-nitro-test/cpp/**' @@ -21,7 +21,7 @@ on: pull_request: paths: - '.github/workflows/build-android.yml' - - 'example/android/**' + - 'apps/example/android/**' - '**/nitrogen/generated/shared/**' - '**/nitrogen/generated/android/**' - 'packages/react-native-nitro-test/cpp/**' @@ -55,7 +55,7 @@ jobs: run: bun install - name: Set minSdk in build.gradle - run: sed -i "s/minSdkVersion = 24/minSdkVersion = ${{ matrix.min-sdk }}/g" example/android/build.gradle + run: sed -i "s/minSdkVersion = 24/minSdkVersion = ${{ matrix.min-sdk }}/g" apps/example/android/build.gradle - name: Setup JDK 17 uses: actions/setup-java@v5.7.0 @@ -70,17 +70,17 @@ jobs: path: | ~/.gradle/caches ~/.gradle/wrapper - example/android/.gradle - example/android/app/.cxx + apps/example/android/.gradle + apps/example/android/app/.cxx key: ${{ runner.os }}-gradle-${{ matrix.min-sdk }}-${{ env.TARGET_ANDROID_ARCH }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', '**/CMakeLists.txt', '**/*.cmake') }} restore-keys: | ${{ runner.os }}-gradle-${{ matrix.min-sdk }}-${{ env.TARGET_ANDROID_ARCH }}- ${{ runner.os }}-gradle- - - name: Run Gradle Build for example/android/ - working-directory: example/android + - name: Run Gradle Build for apps/example/android/ + working-directory: apps/example/android run: ./gradlew :app:assembleDebug --no-daemon --build-cache -PreactNativeArchitectures=${{ env.TARGET_ANDROID_ARCH }} # Gradle cache doesn't like daemons - name: Stop Gradle Daemon - working-directory: example/android + working-directory: apps/example/android run: ./gradlew --stop diff --git a/.github/workflows/build-ios-release.yml b/.github/workflows/build-ios-release.yml index de9fa0f6df..1be1b852d0 100644 --- a/.github/workflows/build-ios-release.yml +++ b/.github/workflows/build-ios-release.yml @@ -23,16 +23,16 @@ jobs: with: ruby-version: 2.7.2 bundler-cache: true - working-directory: example + working-directory: apps/example - name: Select Xcode 26.5 run: sudo xcode-select -s "/Applications/Xcode_26.5.app/Contents/Developer" - name: Install Pods - working-directory: example + working-directory: apps/example run: bun pods - name: Build App (Release, Simulator) - working-directory: example/ios + working-directory: apps/example/ios run: | set -o pipefail xcodebuild \ @@ -50,8 +50,8 @@ jobs: - name: Package .app for Simulator run: | - cd example/ios/build/Build/Products/Release-iphonesimulator - zip -r ../../../../../../NitroExample-Release-Simulator.zip NitroExample.app + cd apps/example/ios/build/Build/Products/Release-iphonesimulator + zip -r "$GITHUB_WORKSPACE/NitroExample-Release-Simulator.zip" NitroExample.app - name: Upload .app to Release uses: actions/upload-release-asset@v1 diff --git a/.github/workflows/build-ios.yml b/.github/workflows/build-ios.yml index 0097c1992f..dc23ffaad6 100644 --- a/.github/workflows/build-ios.yml +++ b/.github/workflows/build-ios.yml @@ -6,7 +6,7 @@ on: - main paths: - '.github/workflows/build-ios.yml' - - 'example/ios/**' + - 'apps/example/ios/**' - '**/nitrogen/generated/shared/**' - '**/nitrogen/generated/ios/**' - 'packages/react-native-nitro-test/cpp/**' @@ -22,7 +22,7 @@ on: pull_request: paths: - '.github/workflows/build-ios.yml' - - 'example/ios/**' + - 'apps/example/ios/**' - '**/nitrogen/generated/shared/**' - '**/nitrogen/generated/ios/**' - 'packages/react-native-nitro-test/cpp/**' @@ -81,7 +81,7 @@ jobs: with: ruby-version: 2.7.2 bundler-cache: true - working-directory: example + working-directory: apps/example - name: Select Xcode ${{ env.XCODE_VERSION }} run: sudo xcode-select -s "/Applications/Xcode_${{ env.XCODE_VERSION }}.app/Contents/Developer" @@ -89,24 +89,24 @@ jobs: - name: Restore Pods cache uses: actions/cache@v6 with: - path: example/ios/Pods - key: ${{ runner.os }}-${{ runner.arch }}-${{ matrix.use_frameworks }}-pods-${{ hashFiles('bun.lock', 'example/Gemfile.lock', 'example/ios/Podfile.lock') }} + path: apps/example/ios/Pods + key: ${{ runner.os }}-${{ runner.arch }}-${{ matrix.use_frameworks }}-pods-${{ hashFiles('bun.lock', 'apps/example/Gemfile.lock', 'apps/example/ios/Podfile.lock') }} restore-keys: | ${{ runner.os }}-${{ runner.arch }}-${{ matrix.use_frameworks }}-pods- - name: Install Pods - working-directory: example + working-directory: apps/example run: bun pods - name: Restore DerivedData cache uses: actions/cache@v6 with: - path: example/ios/build - key: ${{ runner.os }}-${{ runner.arch }}-${{ matrix.use_frameworks }}-xcode${{ env.XCODE_VERSION }}-dd-${{ hashFiles('bun.lock', 'example/Gemfile.lock', 'example/ios/Podfile.lock') }} + path: apps/example/ios/build + key: ${{ runner.os }}-${{ runner.arch }}-${{ matrix.use_frameworks }}-xcode${{ env.XCODE_VERSION }}-dd-${{ hashFiles('bun.lock', 'apps/example/Gemfile.lock', 'apps/example/ios/Podfile.lock') }} restore-keys: | ${{ runner.os }}-${{ runner.arch }}-${{ matrix.use_frameworks }}-xcode${{ env.XCODE_VERSION }}-dd- - name: Build App - working-directory: example/ios + working-directory: apps/example/ios run: | set -o pipefail xcodebuild \ diff --git a/.github/workflows/harness-android.yml b/.github/workflows/harness-android.yml index 60bec40f43..0391f25351 100644 --- a/.github/workflows/harness-android.yml +++ b/.github/workflows/harness-android.yml @@ -27,7 +27,7 @@ on: - main paths: - ".github/workflows/harness-android.yml" - - "example/android/**" + - "apps/example/android/**" - "**/nitrogen/generated/shared/**" - "**/nitrogen/generated/android/**" - "packages/react-native-nitro-test/cpp/**" @@ -40,16 +40,16 @@ on: - "**/bun.lock" - "**/react-native.config.js" - "**/nitro.json" - - "example/__tests__/**" - - "example/src/getTests.ts" - - "example/src/testing/**" - - "example/jest.harness.config.mjs" - - "example/package.json" - - "example/rn-harness.config.mjs" + - "apps/example/__tests__/**" + - "apps/example/src/getTests.ts" + - "apps/example/src/testing/**" + - "apps/example/jest.harness.config.mjs" + - "apps/example/package.json" + - "apps/example/rn-harness.config.mjs" pull_request: paths: - ".github/workflows/harness-android.yml" - - "example/android/**" + - "apps/example/android/**" - "**/nitrogen/generated/shared/**" - "**/nitrogen/generated/android/**" - "packages/react-native-nitro-test/cpp/**" @@ -62,12 +62,12 @@ on: - "**/bun.lock" - "**/react-native.config.js" - "**/nitro.json" - - "example/__tests__/**" - - "example/src/getTests.ts" - - "example/src/testing/**" - - "example/jest.harness.config.mjs" - - "example/package.json" - - "example/rn-harness.config.mjs" + - "apps/example/__tests__/**" + - "apps/example/src/getTests.ts" + - "apps/example/src/testing/**" + - "apps/example/jest.harness.config.mjs" + - "apps/example/package.json" + - "apps/example/rn-harness.config.mjs" env: # Device configuration - can be overridden by workflow_dispatch inputs @@ -111,7 +111,7 @@ jobs: run: bun install - name: Set minSdk in build.gradle - run: sed -i "s/minSdkVersion = 24/minSdkVersion = ${{ matrix.min-sdk }}/g" example/android/build.gradle + run: sed -i "s/minSdkVersion = 24/minSdkVersion = ${{ matrix.min-sdk }}/g" apps/example/android/build.gradle - name: Setup JDK 17 uses: actions/setup-java@v5.7.0 @@ -126,25 +126,25 @@ jobs: path: | ~/.gradle/caches ~/.gradle/wrapper - example/android/.gradle - example/android/app/.cxx + apps/example/android/.gradle + apps/example/android/app/.cxx key: ${{ runner.os }}-gradle-${{ matrix.min-sdk }}-${{ env.DEVICE_ARCH }}-${{ matrix.sanitizer.name }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', '**/CMakeLists.txt', '**/*.cmake') }} restore-keys: | ${{ runner.os }}-gradle-${{ matrix.min-sdk }}-${{ env.DEVICE_ARCH }}-${{ matrix.sanitizer.name }}- ${{ runner.os }}-gradle- - name: Build Android app - working-directory: example/android + working-directory: apps/example/android run: ./gradlew :app:assembleDebug --no-daemon --build-cache -PreactNativeArchitectures=${{ env.DEVICE_ARCH }} -PnitroSanitizer=${{ matrix.sanitizer.gradle_property }} - name: Run Harness E2E tests uses: callstackincubator/react-native-harness@v1.4.1 with: runner: android - projectRoot: example + projectRoot: apps/example app: android/app/build/outputs/apk/debug/app-debug.apk packageManager: bun # Gradle cache doesn't like daemons - name: Stop Gradle Daemon - working-directory: example/android + working-directory: apps/example/android run: ./gradlew --stop diff --git a/.github/workflows/harness-ios.yml b/.github/workflows/harness-ios.yml index 861c57566e..b482f9b6f7 100644 --- a/.github/workflows/harness-ios.yml +++ b/.github/workflows/harness-ios.yml @@ -27,7 +27,7 @@ on: - main paths: - ".github/workflows/harness-ios.yml" - - "example/ios/**" + - "apps/example/ios/**" - "**/nitrogen/generated/shared/**" - "**/nitrogen/generated/ios/**" - "packages/react-native-nitro-test/cpp/**" @@ -42,16 +42,16 @@ on: - "**/*.podspec" - "**/react-native.config.js" - "**/nitro.json" - - "example/__tests__/**" - - "example/src/getTests.ts" - - "example/src/testing/**" - - "example/jest.harness.config.mjs" - - "example/package.json" - - "example/rn-harness.config.mjs" + - "apps/example/__tests__/**" + - "apps/example/src/getTests.ts" + - "apps/example/src/testing/**" + - "apps/example/jest.harness.config.mjs" + - "apps/example/package.json" + - "apps/example/rn-harness.config.mjs" pull_request: paths: - ".github/workflows/harness-ios.yml" - - "example/ios/**" + - "apps/example/ios/**" - "**/nitrogen/generated/shared/**" - "**/nitrogen/generated/ios/**" - "packages/react-native-nitro-test/cpp/**" @@ -66,12 +66,12 @@ on: - "**/*.podspec" - "**/react-native.config.js" - "**/nitro.json" - - "example/__tests__/**" - - "example/src/getTests.ts" - - "example/src/testing/**" - - "example/jest.harness.config.mjs" - - "example/package.json" - - "example/rn-harness.config.mjs" + - "apps/example/__tests__/**" + - "apps/example/src/getTests.ts" + - "apps/example/src/testing/**" + - "apps/example/jest.harness.config.mjs" + - "apps/example/package.json" + - "apps/example/rn-harness.config.mjs" env: # Device configuration - can be overridden by workflow_dispatch inputs @@ -124,7 +124,7 @@ jobs: with: ruby-version: 2.7.2 bundler-cache: true - working-directory: example + working-directory: apps/example - name: Select Xcode ${{ env.XCODE_VERSION }} run: sudo xcode-select -s "/Applications/Xcode_${{ env.XCODE_VERSION }}.app/Contents/Developer" @@ -132,24 +132,24 @@ jobs: - name: Restore Pods cache uses: actions/cache@v6 with: - path: example/ios/Pods - key: ${{ runner.os }}-${{ runner.arch }}-pods-${{ hashFiles('bun.lock', 'example/Gemfile.lock', 'example/ios/Podfile.lock') }} + path: apps/example/ios/Pods + key: ${{ runner.os }}-${{ runner.arch }}-pods-${{ hashFiles('bun.lock', 'apps/example/Gemfile.lock', 'apps/example/ios/Podfile.lock') }} restore-keys: | ${{ runner.os }}-${{ runner.arch }}-pods- - name: Install Pods - working-directory: example + working-directory: apps/example run: bun pods - name: Restore DerivedData cache uses: actions/cache@v6 with: - path: example/ios/build - key: ${{ runner.os }}-${{ runner.arch }}-xcode${{ env.XCODE_VERSION }}-${{ matrix.sanitizer.name }}-dd-${{ hashFiles('bun.lock', 'example/Gemfile.lock', 'example/ios/Podfile.lock') }} + path: apps/example/ios/build + key: ${{ runner.os }}-${{ runner.arch }}-xcode${{ env.XCODE_VERSION }}-${{ matrix.sanitizer.name }}-dd-${{ hashFiles('bun.lock', 'apps/example/Gemfile.lock', 'apps/example/ios/Podfile.lock') }} restore-keys: | ${{ runner.os }}-${{ runner.arch }}-xcode${{ env.XCODE_VERSION }}-${{ matrix.sanitizer.name }}-dd- - name: Build iOS app - working-directory: example/ios + working-directory: apps/example/ios run: | set -o pipefail CLANG="$(xcrun -f clang)" @@ -176,6 +176,6 @@ jobs: uses: callstackincubator/react-native-harness@v1.4.1 with: runner: ios - projectRoot: example + projectRoot: apps/example app: ios/build/Build/Products/Debug-iphonesimulator/NitroExample.app packageManager: bun diff --git a/.github/workflows/lint-typescript.yml b/.github/workflows/lint-typescript.yml index b327884bd9..9873e78a61 100644 --- a/.github/workflows/lint-typescript.yml +++ b/.github/workflows/lint-typescript.yml @@ -53,8 +53,8 @@ jobs: - name: Install npm dependencies (bun) run: bun install - - name: Run ESLint CI in example/ - working-directory: example + - name: Run ESLint CI in apps/example/ + working-directory: apps/example run: bun lint-ci - name: Run ESLint CI in packages/nitrogen working-directory: packages/nitrogen @@ -69,8 +69,8 @@ jobs: working-directory: packages/react-native-nitro-modules run: bun lint-ci - - name: Run ESLint with auto-fix in example/ - working-directory: example + - name: Run ESLint with auto-fix in apps/example/ + working-directory: apps/example run: bun lint - name: Run ESLint with auto-fix in packages/nitrogen working-directory: packages/nitrogen diff --git a/.github/workflows/update-lockfiles.yml b/.github/workflows/update-lockfiles.yml index dc31ab314d..6ba8291beb 100644 --- a/.github/workflows/update-lockfiles.yml +++ b/.github/workflows/update-lockfiles.yml @@ -33,7 +33,7 @@ jobs: with: ruby-version: 2.7.2 bundler-cache: true - working-directory: example/ios + working-directory: apps/example/ios - name: Select Xcode 26.2 run: sudo xcode-select -s "/Applications/Xcode_26.2.app/Contents/Developer" @@ -41,18 +41,18 @@ jobs: - run: | bun install - cd example + cd apps/example bundle install bun pods - cd .. + cd "$GITHUB_WORKSPACE" cd docs bun install cd .. git add bun.lock - git add example/ios/Podfile.lock - git add example/Gemfile.lock + git add apps/example/ios/Podfile.lock + git add apps/example/Gemfile.lock git config --global user.name 'dependabot[bot]' git config --global user.email 'dependabot[bot]@users.noreply.github.com' diff --git a/.gitignore b/.gitignore index d7fb41f434..fae0fc49b2 100644 --- a/.gitignore +++ b/.gitignore @@ -45,10 +45,10 @@ android.iml # Cocoapods # -example/ios/Pods +apps/*/ios/Pods # Ruby -example/vendor/ +apps/*/vendor/ # node.js # @@ -88,7 +88,7 @@ lib/ tsconfig.tsbuildinfo # React Native Harness -example/.harness/ +apps/*/.harness/ # Claude Code local settings .claude/settings.local.json diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index df19b2bc3a..945a0285d9 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -21,7 +21,7 @@ Either is welcome. A clean, deterministic repro is often more valuable than a gu Nitro is a Bun monorepo: -- [example/](example) — React Native example app that hosts the runtime test harness. +- [apps/example/](apps/example) — React Native example app that hosts the runtime test harness. - [packages/nitrogen/](packages/nitrogen) — the `nitrogen` code generator. - [packages/react-native-nitro-modules/](packages/react-native-nitro-modules) — the core Nitro C++ library. - [packages/react-native-nitro-test/](packages/react-native-nitro-test) — a Nitro module full of specs used as compile-time and runtime tests. @@ -47,7 +47,7 @@ bun lint-all # run all linters (JS/TS, C++, Swift, Kotlin) The most useful thing you can contribute for a bug you can't fix yourself is a **PR that makes CI go red**. If you can reproduce your bug inside this repo as: - a **compile error** — add the minimal spec to [packages/react-native-nitro-test/src/specs/](packages/react-native-nitro-test/src/specs) that causes nitrogen output to fail to build, or -- a **runtime error** — add the minimal failing assertion to [example/src/getTests.ts](example/src/getTests.ts) so the Harness workflows ([harness-ios.yml](.github/workflows/harness-ios.yml), [harness-android.yml](.github/workflows/harness-android.yml)) catch it, +- a **runtime error** — add the minimal failing assertion to [apps/example/src/getTests.ts](apps/example/src/getTests.ts) so the Harness workflows ([harness-ios.yml](.github/workflows/harness-ios.yml), [harness-android.yml](.github/workflows/harness-android.yml)) catch it, then open a PR with just that change. Don't attempt a fix. A red CI run that deterministically pins the bug is often more valuable than a guessed patch — once the repro is in, the actual fix can be taken from there. @@ -59,7 +59,7 @@ The rules from ["Writing good tests"](#writing-good-tests) below still apply to ### 1. Runtime test -A runtime test lives in [example/src/getTests.ts](example/src/getTests.ts) and exercises a spec from [packages/react-native-nitro-test/src/specs/](packages/react-native-nitro-test/src/specs). It runs: +A runtime test lives in [apps/example/src/getTests.ts](apps/example/src/getTests.ts) and exercises a spec from [packages/react-native-nitro-test/src/specs/](packages/react-native-nitro-test/src/specs). It runs: - locally in the example app via the "Run Tests" screen / `getTests`, and - in CI on both iOS and Android via the **Harness** workflows ([harness-ios.yml](.github/workflows/harness-ios.yml), [harness-android.yml](.github/workflows/harness-android.yml)). diff --git a/example/.bundle/config b/apps/example/.bundle/config similarity index 100% rename from example/.bundle/config rename to apps/example/.bundle/config diff --git a/example/.gitattributes b/apps/example/.gitattributes similarity index 100% rename from example/.gitattributes rename to apps/example/.gitattributes diff --git a/example/.watchmanconfig b/apps/example/.watchmanconfig similarity index 100% rename from example/.watchmanconfig rename to apps/example/.watchmanconfig diff --git a/example/Gemfile b/apps/example/Gemfile similarity index 100% rename from example/Gemfile rename to apps/example/Gemfile diff --git a/example/Gemfile.lock b/apps/example/Gemfile.lock similarity index 100% rename from example/Gemfile.lock rename to apps/example/Gemfile.lock diff --git a/example/README.md b/apps/example/README.md similarity index 100% rename from example/README.md rename to apps/example/README.md diff --git a/example/__tests__/nitro.harness.ts b/apps/example/__tests__/nitro.harness.ts similarity index 100% rename from example/__tests__/nitro.harness.ts rename to apps/example/__tests__/nitro.harness.ts diff --git a/example/__tests__/nitro.views.harness.tsx b/apps/example/__tests__/nitro.views.harness.tsx similarity index 100% rename from example/__tests__/nitro.views.harness.tsx rename to apps/example/__tests__/nitro.views.harness.tsx diff --git a/example/android/app/build.gradle b/apps/example/android/app/build.gradle similarity index 96% rename from example/android/app/build.gradle rename to apps/example/android/app/build.gradle index 4b8e3dfb3b..5d3b812baa 100644 --- a/example/android/app/build.gradle +++ b/apps/example/android/app/build.gradle @@ -11,11 +11,11 @@ react { // The root of your project, i.e. where "package.json" lives. Default is '..' // root = file("../") // The folder where the react-native NPM package is. Default is ../node_modules/react-native - reactNativeDir = file("../../../node_modules/react-native") + reactNativeDir = file("../../../../node_modules/react-native") // The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen - codegenDir = file("../../../node_modules/@react-native/codegen") + codegenDir = file("../../../../node_modules/@react-native/codegen") // The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js - cliFile = file("../../../node_modules/react-native/cli.js") + cliFile = file("../../../../node_modules/react-native/cli.js") /* Variants */ // The list of variants to that are debuggable. For those we're going to @@ -45,7 +45,7 @@ react { /* Hermes Commands */ // The hermes compiler command to run. By default it is 'hermesc' - hermesCommand = "$rootDir/../../node_modules/hermes-compiler/hermesc/%OS-BIN%/hermesc" + hermesCommand = "$rootDir/../../../node_modules/hermes-compiler/hermesc/%OS-BIN%/hermesc" // // The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map" // hermesFlags = ["-O", "-output-source-map"] diff --git a/example/android/app/debug.keystore b/apps/example/android/app/debug.keystore similarity index 100% rename from example/android/app/debug.keystore rename to apps/example/android/app/debug.keystore diff --git a/example/android/app/proguard-rules.pro b/apps/example/android/app/proguard-rules.pro similarity index 100% rename from example/android/app/proguard-rules.pro rename to apps/example/android/app/proguard-rules.pro diff --git a/example/android/app/src/debug/AndroidManifest.xml b/apps/example/android/app/src/debug/AndroidManifest.xml similarity index 100% rename from example/android/app/src/debug/AndroidManifest.xml rename to apps/example/android/app/src/debug/AndroidManifest.xml diff --git a/example/android/app/src/main/AndroidManifest.xml b/apps/example/android/app/src/main/AndroidManifest.xml similarity index 100% rename from example/android/app/src/main/AndroidManifest.xml rename to apps/example/android/app/src/main/AndroidManifest.xml diff --git a/example/android/app/src/main/ic_launcher-playstore.png b/apps/example/android/app/src/main/ic_launcher-playstore.png similarity index 100% rename from example/android/app/src/main/ic_launcher-playstore.png rename to apps/example/android/app/src/main/ic_launcher-playstore.png diff --git a/example/android/app/src/main/java/com/nitroexample/MainActivity.kt b/apps/example/android/app/src/main/java/com/nitroexample/MainActivity.kt similarity index 100% rename from example/android/app/src/main/java/com/nitroexample/MainActivity.kt rename to apps/example/android/app/src/main/java/com/nitroexample/MainActivity.kt diff --git a/example/android/app/src/main/java/com/nitroexample/MainApplication.kt b/apps/example/android/app/src/main/java/com/nitroexample/MainApplication.kt similarity index 100% rename from example/android/app/src/main/java/com/nitroexample/MainApplication.kt rename to apps/example/android/app/src/main/java/com/nitroexample/MainApplication.kt diff --git a/example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModule.kt b/apps/example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModule.kt similarity index 100% rename from example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModule.kt rename to apps/example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModule.kt diff --git a/example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModulePackage.kt b/apps/example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModulePackage.kt similarity index 100% rename from example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModulePackage.kt rename to apps/example/android/app/src/main/java/com/nitroexample/exampleturbomodule/ExampleTurboModulePackage.kt diff --git a/example/android/app/src/main/res/drawable/rn_edit_text_material.xml b/apps/example/android/app/src/main/res/drawable/rn_edit_text_material.xml similarity index 100% rename from example/android/app/src/main/res/drawable/rn_edit_text_material.xml rename to apps/example/android/app/src/main/res/drawable/rn_edit_text_material.xml diff --git a/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml similarity index 100% rename from example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml rename to apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml diff --git a/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml similarity index 100% rename from example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml rename to apps/example/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-hdpi/ic_launcher.webp rename to apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.webp diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp b/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp rename to apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp diff --git a/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp rename to apps/example/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-mdpi/ic_launcher.webp rename to apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.webp diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp b/apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp rename to apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp diff --git a/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp rename to apps/example/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.webp rename to apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.webp diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp b/apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp rename to apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp diff --git a/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp rename to apps/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp rename to apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp rename to apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp diff --git a/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp rename to apps/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp rename to apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp b/apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp rename to apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp diff --git a/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp b/apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp similarity index 100% rename from example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp rename to apps/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp diff --git a/example/android/app/src/main/res/values/ic_launcher_background.xml b/apps/example/android/app/src/main/res/values/ic_launcher_background.xml similarity index 100% rename from example/android/app/src/main/res/values/ic_launcher_background.xml rename to apps/example/android/app/src/main/res/values/ic_launcher_background.xml diff --git a/example/android/app/src/main/res/values/strings.xml b/apps/example/android/app/src/main/res/values/strings.xml similarity index 100% rename from example/android/app/src/main/res/values/strings.xml rename to apps/example/android/app/src/main/res/values/strings.xml diff --git a/example/android/app/src/main/res/values/styles.xml b/apps/example/android/app/src/main/res/values/styles.xml similarity index 100% rename from example/android/app/src/main/res/values/styles.xml rename to apps/example/android/app/src/main/res/values/styles.xml diff --git a/example/android/build.gradle b/apps/example/android/build.gradle similarity index 100% rename from example/android/build.gradle rename to apps/example/android/build.gradle diff --git a/example/android/gradle.properties b/apps/example/android/gradle.properties similarity index 100% rename from example/android/gradle.properties rename to apps/example/android/gradle.properties diff --git a/example/android/gradle/wrapper/gradle-wrapper.jar b/apps/example/android/gradle/wrapper/gradle-wrapper.jar similarity index 100% rename from example/android/gradle/wrapper/gradle-wrapper.jar rename to apps/example/android/gradle/wrapper/gradle-wrapper.jar diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/apps/example/android/gradle/wrapper/gradle-wrapper.properties similarity index 100% rename from example/android/gradle/wrapper/gradle-wrapper.properties rename to apps/example/android/gradle/wrapper/gradle-wrapper.properties diff --git a/example/android/gradlew b/apps/example/android/gradlew similarity index 100% rename from example/android/gradlew rename to apps/example/android/gradlew diff --git a/example/android/gradlew.bat b/apps/example/android/gradlew.bat similarity index 100% rename from example/android/gradlew.bat rename to apps/example/android/gradlew.bat diff --git a/example/android/settings.gradle b/apps/example/android/settings.gradle similarity index 57% rename from example/android/settings.gradle rename to apps/example/android/settings.gradle index 2e74e1f7b0..78b83166d6 100644 --- a/example/android/settings.gradle +++ b/apps/example/android/settings.gradle @@ -1,8 +1,8 @@ -pluginManagement { includeBuild("../../node_modules/@react-native/gradle-plugin") } +pluginManagement { includeBuild("../../../node_modules/@react-native/gradle-plugin") } plugins { id("com.facebook.react.settings") } extensions.configure(com.facebook.react.ReactSettingsExtension){ ex -> ex.autolinkLibrariesFromCommand() } rootProject.name = 'NitroExample' include ':app' -includeBuild('../../node_modules/@react-native/gradle-plugin') +includeBuild('../../../node_modules/@react-native/gradle-plugin') diff --git a/example/app.json b/apps/example/app.json similarity index 100% rename from example/app.json rename to apps/example/app.json diff --git a/example/babel.config.js b/apps/example/babel.config.js similarity index 100% rename from example/babel.config.js rename to apps/example/babel.config.js diff --git a/example/index.js b/apps/example/index.js similarity index 100% rename from example/index.js rename to apps/example/index.js diff --git a/example/ios/.xcode.env b/apps/example/ios/.xcode.env similarity index 100% rename from example/ios/.xcode.env rename to apps/example/ios/.xcode.env diff --git a/example/ios/Example Turbo Module/MGLExampleTurboModule.h b/apps/example/ios/Example Turbo Module/MGLExampleTurboModule.h similarity index 100% rename from example/ios/Example Turbo Module/MGLExampleTurboModule.h rename to apps/example/ios/Example Turbo Module/MGLExampleTurboModule.h diff --git a/example/ios/Example Turbo Module/MGLExampleTurboModule.mm b/apps/example/ios/Example Turbo Module/MGLExampleTurboModule.mm similarity index 100% rename from example/ios/Example Turbo Module/MGLExampleTurboModule.mm rename to apps/example/ios/Example Turbo Module/MGLExampleTurboModule.mm diff --git a/example/ios/File.swift b/apps/example/ios/File.swift similarity index 100% rename from example/ios/File.swift rename to apps/example/ios/File.swift diff --git a/example/ios/NitroExample.xcodeproj/project.pbxproj b/apps/example/ios/NitroExample.xcodeproj/project.pbxproj similarity index 99% rename from example/ios/NitroExample.xcodeproj/project.pbxproj rename to apps/example/ios/NitroExample.xcodeproj/project.pbxproj index 0a5013453e..acfac9976e 100644 --- a/example/ios/NitroExample.xcodeproj/project.pbxproj +++ b/apps/example/ios/NitroExample.xcodeproj/project.pbxproj @@ -532,7 +532,7 @@ "$(inherited)", " ", ); - REACT_NATIVE_PATH = "${PODS_ROOT}/../../../node_modules/react-native"; + REACT_NATIVE_PATH = "${PODS_ROOT}/../../../../node_modules/react-native"; SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG"; SWIFT_ENABLE_EXPLICIT_MODULES = NO; @@ -615,7 +615,7 @@ "$(inherited)", " ", ); - REACT_NATIVE_PATH = "${PODS_ROOT}/../../../node_modules/react-native"; + REACT_NATIVE_PATH = "${PODS_ROOT}/../../../../node_modules/react-native"; SDKROOT = iphoneos; SWIFT_ENABLE_EXPLICIT_MODULES = NO; SWIFT_OBJC_INTEROP_MODE = objcxx; diff --git a/example/ios/NitroExample.xcodeproj/xcshareddata/xcschemes/NitroExample.xcscheme b/apps/example/ios/NitroExample.xcodeproj/xcshareddata/xcschemes/NitroExample.xcscheme similarity index 100% rename from example/ios/NitroExample.xcodeproj/xcshareddata/xcschemes/NitroExample.xcscheme rename to apps/example/ios/NitroExample.xcodeproj/xcshareddata/xcschemes/NitroExample.xcscheme diff --git a/example/ios/NitroExample.xcworkspace/contents.xcworkspacedata b/apps/example/ios/NitroExample.xcworkspace/contents.xcworkspacedata similarity index 100% rename from example/ios/NitroExample.xcworkspace/contents.xcworkspacedata rename to apps/example/ios/NitroExample.xcworkspace/contents.xcworkspacedata diff --git a/example/ios/NitroExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/apps/example/ios/NitroExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from example/ios/NitroExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to apps/example/ios/NitroExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/example/ios/NitroExample/AppDelegate.swift b/apps/example/ios/NitroExample/AppDelegate.swift similarity index 100% rename from example/ios/NitroExample/AppDelegate.swift rename to apps/example/ios/NitroExample/AppDelegate.swift diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/100.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/100.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/100.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/100.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/1024.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/1024.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/1024.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/1024.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/114.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/114.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/114.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/114.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/120.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/120.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/120.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/120.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/128.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/128.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/128.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/128.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/144.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/144.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/144.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/144.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/152.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/152.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/152.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/152.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/16.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/16.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/16.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/16.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/167.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/167.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/167.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/167.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/180.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/180.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/180.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/180.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/20.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/20.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/20.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/20.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/256.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/256.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/256.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/256.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/29.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/29.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/29.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/29.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/32.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/32.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/32.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/32.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/40.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/40.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/40.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/40.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/50.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/50.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/50.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/50.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/512.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/512.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/512.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/512.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/57.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/57.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/57.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/57.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/58.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/58.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/58.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/58.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/60.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/60.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/60.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/60.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/64.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/64.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/64.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/64.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/72.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/72.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/72.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/72.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/76.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/76.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/76.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/76.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/80.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/80.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/80.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/80.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/87.png b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/87.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/87.png rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/87.png diff --git a/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/Contents.json b/apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/Contents.json rename to apps/example/ios/NitroExample/Images.xcassets/AppIcon.appiconset/Contents.json diff --git a/example/ios/NitroExample/Images.xcassets/Contents.json b/apps/example/ios/NitroExample/Images.xcassets/Contents.json similarity index 100% rename from example/ios/NitroExample/Images.xcassets/Contents.json rename to apps/example/ios/NitroExample/Images.xcassets/Contents.json diff --git a/example/ios/NitroExample/Images.xcassets/nos.imageset/Contents.json b/apps/example/ios/NitroExample/Images.xcassets/nos.imageset/Contents.json similarity index 100% rename from example/ios/NitroExample/Images.xcassets/nos.imageset/Contents.json rename to apps/example/ios/NitroExample/Images.xcassets/nos.imageset/Contents.json diff --git a/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 1.png b/apps/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 1.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 1.png rename to apps/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 1.png diff --git a/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 2.png b/apps/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 2.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 2.png rename to apps/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192 2.png diff --git a/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192.png b/apps/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192.png similarity index 100% rename from example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192.png rename to apps/example/ios/NitroExample/Images.xcassets/nos.imageset/android-chrome-192x192.png diff --git a/example/ios/NitroExample/Info.plist b/apps/example/ios/NitroExample/Info.plist similarity index 100% rename from example/ios/NitroExample/Info.plist rename to apps/example/ios/NitroExample/Info.plist diff --git a/example/ios/NitroExample/LaunchScreen.storyboard b/apps/example/ios/NitroExample/LaunchScreen.storyboard similarity index 100% rename from example/ios/NitroExample/LaunchScreen.storyboard rename to apps/example/ios/NitroExample/LaunchScreen.storyboard diff --git a/example/ios/NitroExample/PrivacyInfo.xcprivacy b/apps/example/ios/NitroExample/PrivacyInfo.xcprivacy similarity index 100% rename from example/ios/NitroExample/PrivacyInfo.xcprivacy rename to apps/example/ios/NitroExample/PrivacyInfo.xcprivacy diff --git a/example/ios/Podfile b/apps/example/ios/Podfile similarity index 100% rename from example/ios/Podfile rename to apps/example/ios/Podfile diff --git a/example/ios/Podfile.lock b/apps/example/ios/Podfile.lock similarity index 81% rename from example/ios/Podfile.lock rename to apps/example/ios/Podfile.lock index 45ffa9af84..a60350b635 100644 --- a/example/ios/Podfile.lock +++ b/apps/example/ios/Podfile.lock @@ -2002,253 +2002,253 @@ PODS: - Yoga (0.0.0) DEPENDENCIES: - - FBLazyVector (from `../../node_modules/react-native/Libraries/FBLazyVector`) - - "HarnessUI (from `../../node_modules/@react-native-harness/ui`)" - - hermes-engine (from `../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) - - NitroModules (from `../../node_modules/react-native-nitro-modules`) - - NitroTest (from `../../node_modules/react-native-nitro-test`) - - NitroTestExternal (from `../../node_modules/react-native-nitro-test-external`) - - RCTDeprecation (from `../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation`) - - RCTRequired (from `../../node_modules/react-native/Libraries/Required`) - - RCTSwiftUI (from `../../node_modules/react-native/ReactApple/RCTSwiftUI`) - - RCTSwiftUIWrapper (from `../../node_modules/react-native/ReactApple/RCTSwiftUIWrapper`) - - RCTTypeSafety (from `../../node_modules/react-native/Libraries/TypeSafety`) - - React (from `../../node_modules/react-native/`) - - React-callinvoker (from `../../node_modules/react-native/ReactCommon/callinvoker`) - - React-Core (from `../../node_modules/react-native/`) - - React-Core-prebuilt (from `../../node_modules/react-native/React-Core-prebuilt.podspec`) - - React-Core/RCTWebSocket (from `../../node_modules/react-native/`) - - React-CoreModules (from `../../node_modules/react-native/React/CoreModules`) - - React-cxxreact (from `../../node_modules/react-native/ReactCommon/cxxreact`) - - React-debug (from `../../node_modules/react-native/ReactCommon/react/debug`) - - React-defaultsnativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/defaults`) - - React-domnativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/dom`) - - React-Fabric (from `../../node_modules/react-native/ReactCommon`) - - React-FabricComponents (from `../../node_modules/react-native/ReactCommon`) - - React-FabricImage (from `../../node_modules/react-native/ReactCommon`) - - React-featureflags (from `../../node_modules/react-native/ReactCommon/react/featureflags`) - - React-featureflagsnativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags`) - - React-graphics (from `../../node_modules/react-native/ReactCommon/react/renderer/graphics`) - - React-hermes (from `../../node_modules/react-native/ReactCommon/hermes`) - - React-idlecallbacksnativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks`) - - React-ImageManager (from `../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`) - - React-intersectionobservernativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/intersectionobserver`) - - React-jserrorhandler (from `../../node_modules/react-native/ReactCommon/jserrorhandler`) - - React-jsi (from `../../node_modules/react-native/ReactCommon/jsi`) - - React-jsiexecutor (from `../../node_modules/react-native/ReactCommon/jsiexecutor`) - - React-jsinspector (from `../../node_modules/react-native/ReactCommon/jsinspector-modern`) - - React-jsinspectorcdp (from `../../node_modules/react-native/ReactCommon/jsinspector-modern/cdp`) - - React-jsinspectornetwork (from `../../node_modules/react-native/ReactCommon/jsinspector-modern/network`) - - React-jsinspectortracing (from `../../node_modules/react-native/ReactCommon/jsinspector-modern/tracing`) - - React-jsitooling (from `../../node_modules/react-native/ReactCommon/jsitooling`) - - React-jsitracing (from `../../node_modules/react-native/ReactCommon/hermes/executor/`) - - React-logger (from `../../node_modules/react-native/ReactCommon/logger`) - - React-Mapbuffer (from `../../node_modules/react-native/ReactCommon`) - - React-microtasksnativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks`) - - React-mutationobservernativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/mutationobserver`) - - react-native-safe-area-context (from `../../node_modules/react-native-safe-area-context`) - - "react-native-segmented-control (from `../../node_modules/@react-native-segmented-control/segmented-control`)" - - React-NativeModulesApple (from `../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`) - - React-networking (from `../../node_modules/react-native/ReactCommon/react/networking`) - - React-oscompat (from `../../node_modules/react-native/ReactCommon/oscompat`) - - React-perflogger (from `../../node_modules/react-native/ReactCommon/reactperflogger`) - - React-performancecdpmetrics (from `../../node_modules/react-native/ReactCommon/react/performance/cdpmetrics`) - - React-performancetimeline (from `../../node_modules/react-native/ReactCommon/react/performance/timeline`) - - React-RCTActionSheet (from `../../node_modules/react-native/Libraries/ActionSheetIOS`) - - React-RCTAnimation (from `../../node_modules/react-native/Libraries/NativeAnimation`) - - React-RCTAppDelegate (from `../../node_modules/react-native/Libraries/AppDelegate`) - - React-RCTBlob (from `../../node_modules/react-native/Libraries/Blob`) - - React-RCTFabric (from `../../node_modules/react-native/React`) - - React-RCTFBReactNativeSpec (from `../../node_modules/react-native/React`) - - React-RCTImage (from `../../node_modules/react-native/Libraries/Image`) - - React-RCTLinking (from `../../node_modules/react-native/Libraries/LinkingIOS`) - - React-RCTNetwork (from `../../node_modules/react-native/Libraries/Network`) - - React-RCTRuntime (from `../../node_modules/react-native/React/Runtime`) - - React-RCTSettings (from `../../node_modules/react-native/Libraries/Settings`) - - React-RCTText (from `../../node_modules/react-native/Libraries/Text`) - - React-RCTVibration (from `../../node_modules/react-native/Libraries/Vibration`) - - React-rendererconsistency (from `../../node_modules/react-native/ReactCommon/react/renderer/consistency`) - - React-renderercss (from `../../node_modules/react-native/ReactCommon/react/renderer/css`) - - React-rendererdebug (from `../../node_modules/react-native/ReactCommon/react/renderer/debug`) - - React-RuntimeApple (from `../../node_modules/react-native/ReactCommon/react/runtime/platform/ios`) - - React-RuntimeCore (from `../../node_modules/react-native/ReactCommon/react/runtime`) - - React-runtimeexecutor (from `../../node_modules/react-native/ReactCommon/runtimeexecutor`) - - React-RuntimeHermes (from `../../node_modules/react-native/ReactCommon/react/runtime`) - - React-runtimescheduler (from `../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`) - - React-timing (from `../../node_modules/react-native/ReactCommon/react/timing`) - - React-utils (from `../../node_modules/react-native/ReactCommon/react/utils`) - - React-webperformancenativemodule (from `../../node_modules/react-native/ReactCommon/react/nativemodule/webperformance`) + - FBLazyVector (from `../../../node_modules/react-native/Libraries/FBLazyVector`) + - "HarnessUI (from `../../../node_modules/@react-native-harness/ui`)" + - hermes-engine (from `../../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`) + - NitroModules (from `../../../node_modules/react-native-nitro-modules`) + - NitroTest (from `../../../node_modules/react-native-nitro-test`) + - NitroTestExternal (from `../../../node_modules/react-native-nitro-test-external`) + - RCTDeprecation (from `../../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation`) + - RCTRequired (from `../../../node_modules/react-native/Libraries/Required`) + - RCTSwiftUI (from `../../../node_modules/react-native/ReactApple/RCTSwiftUI`) + - RCTSwiftUIWrapper (from `../../../node_modules/react-native/ReactApple/RCTSwiftUIWrapper`) + - RCTTypeSafety (from `../../../node_modules/react-native/Libraries/TypeSafety`) + - React (from `../../../node_modules/react-native/`) + - React-callinvoker (from `../../../node_modules/react-native/ReactCommon/callinvoker`) + - React-Core (from `../../../node_modules/react-native/`) + - React-Core-prebuilt (from `../../../node_modules/react-native/React-Core-prebuilt.podspec`) + - React-Core/RCTWebSocket (from `../../../node_modules/react-native/`) + - React-CoreModules (from `../../../node_modules/react-native/React/CoreModules`) + - React-cxxreact (from `../../../node_modules/react-native/ReactCommon/cxxreact`) + - React-debug (from `../../../node_modules/react-native/ReactCommon/react/debug`) + - React-defaultsnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/defaults`) + - React-domnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/dom`) + - React-Fabric (from `../../../node_modules/react-native/ReactCommon`) + - React-FabricComponents (from `../../../node_modules/react-native/ReactCommon`) + - React-FabricImage (from `../../../node_modules/react-native/ReactCommon`) + - React-featureflags (from `../../../node_modules/react-native/ReactCommon/react/featureflags`) + - React-featureflagsnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags`) + - React-graphics (from `../../../node_modules/react-native/ReactCommon/react/renderer/graphics`) + - React-hermes (from `../../../node_modules/react-native/ReactCommon/hermes`) + - React-idlecallbacksnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks`) + - React-ImageManager (from `../../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios`) + - React-intersectionobservernativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/intersectionobserver`) + - React-jserrorhandler (from `../../../node_modules/react-native/ReactCommon/jserrorhandler`) + - React-jsi (from `../../../node_modules/react-native/ReactCommon/jsi`) + - React-jsiexecutor (from `../../../node_modules/react-native/ReactCommon/jsiexecutor`) + - React-jsinspector (from `../../../node_modules/react-native/ReactCommon/jsinspector-modern`) + - React-jsinspectorcdp (from `../../../node_modules/react-native/ReactCommon/jsinspector-modern/cdp`) + - React-jsinspectornetwork (from `../../../node_modules/react-native/ReactCommon/jsinspector-modern/network`) + - React-jsinspectortracing (from `../../../node_modules/react-native/ReactCommon/jsinspector-modern/tracing`) + - React-jsitooling (from `../../../node_modules/react-native/ReactCommon/jsitooling`) + - React-jsitracing (from `../../../node_modules/react-native/ReactCommon/hermes/executor/`) + - React-logger (from `../../../node_modules/react-native/ReactCommon/logger`) + - React-Mapbuffer (from `../../../node_modules/react-native/ReactCommon`) + - React-microtasksnativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks`) + - React-mutationobservernativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/mutationobserver`) + - react-native-safe-area-context (from `../../../node_modules/react-native-safe-area-context`) + - "react-native-segmented-control (from `../../../node_modules/@react-native-segmented-control/segmented-control`)" + - React-NativeModulesApple (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios`) + - React-networking (from `../../../node_modules/react-native/ReactCommon/react/networking`) + - React-oscompat (from `../../../node_modules/react-native/ReactCommon/oscompat`) + - React-perflogger (from `../../../node_modules/react-native/ReactCommon/reactperflogger`) + - React-performancecdpmetrics (from `../../../node_modules/react-native/ReactCommon/react/performance/cdpmetrics`) + - React-performancetimeline (from `../../../node_modules/react-native/ReactCommon/react/performance/timeline`) + - React-RCTActionSheet (from `../../../node_modules/react-native/Libraries/ActionSheetIOS`) + - React-RCTAnimation (from `../../../node_modules/react-native/Libraries/NativeAnimation`) + - React-RCTAppDelegate (from `../../../node_modules/react-native/Libraries/AppDelegate`) + - React-RCTBlob (from `../../../node_modules/react-native/Libraries/Blob`) + - React-RCTFabric (from `../../../node_modules/react-native/React`) + - React-RCTFBReactNativeSpec (from `../../../node_modules/react-native/React`) + - React-RCTImage (from `../../../node_modules/react-native/Libraries/Image`) + - React-RCTLinking (from `../../../node_modules/react-native/Libraries/LinkingIOS`) + - React-RCTNetwork (from `../../../node_modules/react-native/Libraries/Network`) + - React-RCTRuntime (from `../../../node_modules/react-native/React/Runtime`) + - React-RCTSettings (from `../../../node_modules/react-native/Libraries/Settings`) + - React-RCTText (from `../../../node_modules/react-native/Libraries/Text`) + - React-RCTVibration (from `../../../node_modules/react-native/Libraries/Vibration`) + - React-rendererconsistency (from `../../../node_modules/react-native/ReactCommon/react/renderer/consistency`) + - React-renderercss (from `../../../node_modules/react-native/ReactCommon/react/renderer/css`) + - React-rendererdebug (from `../../../node_modules/react-native/ReactCommon/react/renderer/debug`) + - React-RuntimeApple (from `../../../node_modules/react-native/ReactCommon/react/runtime/platform/ios`) + - React-RuntimeCore (from `../../../node_modules/react-native/ReactCommon/react/runtime`) + - React-runtimeexecutor (from `../../../node_modules/react-native/ReactCommon/runtimeexecutor`) + - React-RuntimeHermes (from `../../../node_modules/react-native/ReactCommon/react/runtime`) + - React-runtimescheduler (from `../../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler`) + - React-timing (from `../../../node_modules/react-native/ReactCommon/react/timing`) + - React-utils (from `../../../node_modules/react-native/ReactCommon/react/utils`) + - React-webperformancenativemodule (from `../../../node_modules/react-native/ReactCommon/react/nativemodule/webperformance`) - ReactAppDependencyProvider (from `build/generated/ios/ReactAppDependencyProvider`) - ReactCodegen (from `build/generated/ios/ReactCodegen`) - - ReactCommon/turbomodule/core (from `../../node_modules/react-native/ReactCommon`) - - ReactNativeDependencies (from `../../node_modules/react-native/third-party-podspecs/ReactNativeDependencies.podspec`) - - RNScreens (from `../../node_modules/react-native-screens`) - - Yoga (from `../../node_modules/react-native/ReactCommon/yoga`) + - ReactCommon/turbomodule/core (from `../../../node_modules/react-native/ReactCommon`) + - ReactNativeDependencies (from `../../../node_modules/react-native/third-party-podspecs/ReactNativeDependencies.podspec`) + - RNScreens (from `../../../node_modules/react-native-screens`) + - Yoga (from `../../../node_modules/react-native/ReactCommon/yoga`) EXTERNAL SOURCES: FBLazyVector: - :path: "../../node_modules/react-native/Libraries/FBLazyVector" + :path: "../../../node_modules/react-native/Libraries/FBLazyVector" HarnessUI: - :path: "../../node_modules/@react-native-harness/ui" + :path: "../../../node_modules/@react-native-harness/ui" hermes-engine: - :podspec: "../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" + :podspec: "../../../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec" :tag: hermes-v250829098.0.10 NitroModules: - :path: "../../node_modules/react-native-nitro-modules" + :path: "../../../node_modules/react-native-nitro-modules" NitroTest: - :path: "../../node_modules/react-native-nitro-test" + :path: "../../../node_modules/react-native-nitro-test" NitroTestExternal: - :path: "../../node_modules/react-native-nitro-test-external" + :path: "../../../node_modules/react-native-nitro-test-external" RCTDeprecation: - :path: "../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation" + :path: "../../../node_modules/react-native/ReactApple/Libraries/RCTFoundation/RCTDeprecation" RCTRequired: - :path: "../../node_modules/react-native/Libraries/Required" + :path: "../../../node_modules/react-native/Libraries/Required" RCTSwiftUI: - :path: "../../node_modules/react-native/ReactApple/RCTSwiftUI" + :path: "../../../node_modules/react-native/ReactApple/RCTSwiftUI" RCTSwiftUIWrapper: - :path: "../../node_modules/react-native/ReactApple/RCTSwiftUIWrapper" + :path: "../../../node_modules/react-native/ReactApple/RCTSwiftUIWrapper" RCTTypeSafety: - :path: "../../node_modules/react-native/Libraries/TypeSafety" + :path: "../../../node_modules/react-native/Libraries/TypeSafety" React: - :path: "../../node_modules/react-native/" + :path: "../../../node_modules/react-native/" React-callinvoker: - :path: "../../node_modules/react-native/ReactCommon/callinvoker" + :path: "../../../node_modules/react-native/ReactCommon/callinvoker" React-Core: - :path: "../../node_modules/react-native/" + :path: "../../../node_modules/react-native/" React-Core-prebuilt: - :podspec: "../../node_modules/react-native/React-Core-prebuilt.podspec" + :podspec: "../../../node_modules/react-native/React-Core-prebuilt.podspec" React-CoreModules: - :path: "../../node_modules/react-native/React/CoreModules" + :path: "../../../node_modules/react-native/React/CoreModules" React-cxxreact: - :path: "../../node_modules/react-native/ReactCommon/cxxreact" + :path: "../../../node_modules/react-native/ReactCommon/cxxreact" React-debug: - :path: "../../node_modules/react-native/ReactCommon/react/debug" + :path: "../../../node_modules/react-native/ReactCommon/react/debug" React-defaultsnativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/defaults" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/defaults" React-domnativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/dom" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/dom" React-Fabric: - :path: "../../node_modules/react-native/ReactCommon" + :path: "../../../node_modules/react-native/ReactCommon" React-FabricComponents: - :path: "../../node_modules/react-native/ReactCommon" + :path: "../../../node_modules/react-native/ReactCommon" React-FabricImage: - :path: "../../node_modules/react-native/ReactCommon" + :path: "../../../node_modules/react-native/ReactCommon" React-featureflags: - :path: "../../node_modules/react-native/ReactCommon/react/featureflags" + :path: "../../../node_modules/react-native/ReactCommon/react/featureflags" React-featureflagsnativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/featureflags" React-graphics: - :path: "../../node_modules/react-native/ReactCommon/react/renderer/graphics" + :path: "../../../node_modules/react-native/ReactCommon/react/renderer/graphics" React-hermes: - :path: "../../node_modules/react-native/ReactCommon/hermes" + :path: "../../../node_modules/react-native/ReactCommon/hermes" React-idlecallbacksnativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/idlecallbacks" React-ImageManager: - :path: "../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios" + :path: "../../../node_modules/react-native/ReactCommon/react/renderer/imagemanager/platform/ios" React-intersectionobservernativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/intersectionobserver" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/intersectionobserver" React-jserrorhandler: - :path: "../../node_modules/react-native/ReactCommon/jserrorhandler" + :path: "../../../node_modules/react-native/ReactCommon/jserrorhandler" React-jsi: - :path: "../../node_modules/react-native/ReactCommon/jsi" + :path: "../../../node_modules/react-native/ReactCommon/jsi" React-jsiexecutor: - :path: "../../node_modules/react-native/ReactCommon/jsiexecutor" + :path: "../../../node_modules/react-native/ReactCommon/jsiexecutor" React-jsinspector: - :path: "../../node_modules/react-native/ReactCommon/jsinspector-modern" + :path: "../../../node_modules/react-native/ReactCommon/jsinspector-modern" React-jsinspectorcdp: - :path: "../../node_modules/react-native/ReactCommon/jsinspector-modern/cdp" + :path: "../../../node_modules/react-native/ReactCommon/jsinspector-modern/cdp" React-jsinspectornetwork: - :path: "../../node_modules/react-native/ReactCommon/jsinspector-modern/network" + :path: "../../../node_modules/react-native/ReactCommon/jsinspector-modern/network" React-jsinspectortracing: - :path: "../../node_modules/react-native/ReactCommon/jsinspector-modern/tracing" + :path: "../../../node_modules/react-native/ReactCommon/jsinspector-modern/tracing" React-jsitooling: - :path: "../../node_modules/react-native/ReactCommon/jsitooling" + :path: "../../../node_modules/react-native/ReactCommon/jsitooling" React-jsitracing: - :path: "../../node_modules/react-native/ReactCommon/hermes/executor/" + :path: "../../../node_modules/react-native/ReactCommon/hermes/executor/" React-logger: - :path: "../../node_modules/react-native/ReactCommon/logger" + :path: "../../../node_modules/react-native/ReactCommon/logger" React-Mapbuffer: - :path: "../../node_modules/react-native/ReactCommon" + :path: "../../../node_modules/react-native/ReactCommon" React-microtasksnativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/microtasks" React-mutationobservernativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/mutationobserver" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/mutationobserver" react-native-safe-area-context: - :path: "../../node_modules/react-native-safe-area-context" + :path: "../../../node_modules/react-native-safe-area-context" react-native-segmented-control: - :path: "../../node_modules/@react-native-segmented-control/segmented-control" + :path: "../../../node_modules/@react-native-segmented-control/segmented-control" React-NativeModulesApple: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/core/platform/ios" React-networking: - :path: "../../node_modules/react-native/ReactCommon/react/networking" + :path: "../../../node_modules/react-native/ReactCommon/react/networking" React-oscompat: - :path: "../../node_modules/react-native/ReactCommon/oscompat" + :path: "../../../node_modules/react-native/ReactCommon/oscompat" React-perflogger: - :path: "../../node_modules/react-native/ReactCommon/reactperflogger" + :path: "../../../node_modules/react-native/ReactCommon/reactperflogger" React-performancecdpmetrics: - :path: "../../node_modules/react-native/ReactCommon/react/performance/cdpmetrics" + :path: "../../../node_modules/react-native/ReactCommon/react/performance/cdpmetrics" React-performancetimeline: - :path: "../../node_modules/react-native/ReactCommon/react/performance/timeline" + :path: "../../../node_modules/react-native/ReactCommon/react/performance/timeline" React-RCTActionSheet: - :path: "../../node_modules/react-native/Libraries/ActionSheetIOS" + :path: "../../../node_modules/react-native/Libraries/ActionSheetIOS" React-RCTAnimation: - :path: "../../node_modules/react-native/Libraries/NativeAnimation" + :path: "../../../node_modules/react-native/Libraries/NativeAnimation" React-RCTAppDelegate: - :path: "../../node_modules/react-native/Libraries/AppDelegate" + :path: "../../../node_modules/react-native/Libraries/AppDelegate" React-RCTBlob: - :path: "../../node_modules/react-native/Libraries/Blob" + :path: "../../../node_modules/react-native/Libraries/Blob" React-RCTFabric: - :path: "../../node_modules/react-native/React" + :path: "../../../node_modules/react-native/React" React-RCTFBReactNativeSpec: - :path: "../../node_modules/react-native/React" + :path: "../../../node_modules/react-native/React" React-RCTImage: - :path: "../../node_modules/react-native/Libraries/Image" + :path: "../../../node_modules/react-native/Libraries/Image" React-RCTLinking: - :path: "../../node_modules/react-native/Libraries/LinkingIOS" + :path: "../../../node_modules/react-native/Libraries/LinkingIOS" React-RCTNetwork: - :path: "../../node_modules/react-native/Libraries/Network" + :path: "../../../node_modules/react-native/Libraries/Network" React-RCTRuntime: - :path: "../../node_modules/react-native/React/Runtime" + :path: "../../../node_modules/react-native/React/Runtime" React-RCTSettings: - :path: "../../node_modules/react-native/Libraries/Settings" + :path: "../../../node_modules/react-native/Libraries/Settings" React-RCTText: - :path: "../../node_modules/react-native/Libraries/Text" + :path: "../../../node_modules/react-native/Libraries/Text" React-RCTVibration: - :path: "../../node_modules/react-native/Libraries/Vibration" + :path: "../../../node_modules/react-native/Libraries/Vibration" React-rendererconsistency: - :path: "../../node_modules/react-native/ReactCommon/react/renderer/consistency" + :path: "../../../node_modules/react-native/ReactCommon/react/renderer/consistency" React-renderercss: - :path: "../../node_modules/react-native/ReactCommon/react/renderer/css" + :path: "../../../node_modules/react-native/ReactCommon/react/renderer/css" React-rendererdebug: - :path: "../../node_modules/react-native/ReactCommon/react/renderer/debug" + :path: "../../../node_modules/react-native/ReactCommon/react/renderer/debug" React-RuntimeApple: - :path: "../../node_modules/react-native/ReactCommon/react/runtime/platform/ios" + :path: "../../../node_modules/react-native/ReactCommon/react/runtime/platform/ios" React-RuntimeCore: - :path: "../../node_modules/react-native/ReactCommon/react/runtime" + :path: "../../../node_modules/react-native/ReactCommon/react/runtime" React-runtimeexecutor: - :path: "../../node_modules/react-native/ReactCommon/runtimeexecutor" + :path: "../../../node_modules/react-native/ReactCommon/runtimeexecutor" React-RuntimeHermes: - :path: "../../node_modules/react-native/ReactCommon/react/runtime" + :path: "../../../node_modules/react-native/ReactCommon/react/runtime" React-runtimescheduler: - :path: "../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler" + :path: "../../../node_modules/react-native/ReactCommon/react/renderer/runtimescheduler" React-timing: - :path: "../../node_modules/react-native/ReactCommon/react/timing" + :path: "../../../node_modules/react-native/ReactCommon/react/timing" React-utils: - :path: "../../node_modules/react-native/ReactCommon/react/utils" + :path: "../../../node_modules/react-native/ReactCommon/react/utils" React-webperformancenativemodule: - :path: "../../node_modules/react-native/ReactCommon/react/nativemodule/webperformance" + :path: "../../../node_modules/react-native/ReactCommon/react/nativemodule/webperformance" ReactAppDependencyProvider: :path: build/generated/ios/ReactAppDependencyProvider ReactCodegen: :path: build/generated/ios/ReactCodegen ReactCommon: - :path: "../../node_modules/react-native/ReactCommon" + :path: "../../../node_modules/react-native/ReactCommon" ReactNativeDependencies: - :podspec: "../../node_modules/react-native/third-party-podspecs/ReactNativeDependencies.podspec" + :podspec: "../../../node_modules/react-native/third-party-podspecs/ReactNativeDependencies.podspec" RNScreens: - :path: "../../node_modules/react-native-screens" + :path: "../../../node_modules/react-native-screens" Yoga: - :path: "../../node_modules/react-native/ReactCommon/yoga" + :path: "../../../node_modules/react-native/ReactCommon/yoga" SPEC CHECKSUMS: FBLazyVector: 24e62c765683b8d89006a88a2c8f5cf019f0074d diff --git a/example/jest.harness.config.mjs b/apps/example/jest.harness.config.mjs similarity index 100% rename from example/jest.harness.config.mjs rename to apps/example/jest.harness.config.mjs diff --git a/example/metro.config.js b/apps/example/metro.config.js similarity index 91% rename from example/metro.config.js rename to apps/example/metro.config.js index 03a7555d6f..c4eb422777 100644 --- a/example/metro.config.js +++ b/apps/example/metro.config.js @@ -1,8 +1,8 @@ const { getDefaultConfig, mergeConfig } = require('@react-native/metro-config') const path = require('path') -const pak = require('../package.json') +const pak = require('../../package.json') -const root = path.resolve(__dirname, '..') +const root = path.resolve(__dirname, '../..') const modules = Object.keys({ ...pak.peerDependencies }) /** diff --git a/example/package.json b/apps/example/package.json similarity index 100% rename from example/package.json rename to apps/example/package.json diff --git a/example/react-native.config.js b/apps/example/react-native.config.js similarity index 100% rename from example/react-native.config.js rename to apps/example/react-native.config.js diff --git a/example/rn-harness.config.mjs b/apps/example/rn-harness.config.mjs similarity index 100% rename from example/rn-harness.config.mjs rename to apps/example/rn-harness.config.mjs diff --git a/example/src/App.tsx b/apps/example/src/App.tsx similarity index 100% rename from example/src/App.tsx rename to apps/example/src/App.tsx diff --git a/example/src/Testers.ts b/apps/example/src/Testers.ts similarity index 100% rename from example/src/Testers.ts rename to apps/example/src/Testers.ts diff --git a/example/src/components/KeyboardDismissBackground.tsx b/apps/example/src/components/KeyboardDismissBackground.tsx similarity index 100% rename from example/src/components/KeyboardDismissBackground.tsx rename to apps/example/src/components/KeyboardDismissBackground.tsx diff --git a/example/src/components/TestCase.tsx b/apps/example/src/components/TestCase.tsx similarity index 100% rename from example/src/components/TestCase.tsx rename to apps/example/src/components/TestCase.tsx diff --git a/example/src/getTests.ts b/apps/example/src/getTests.ts similarity index 100% rename from example/src/getTests.ts rename to apps/example/src/getTests.ts diff --git a/example/src/img/dna.png b/apps/example/src/img/dna.png similarity index 100% rename from example/src/img/dna.png rename to apps/example/src/img/dna.png diff --git a/example/src/img/map.png b/apps/example/src/img/map.png similarity index 100% rename from example/src/img/map.png rename to apps/example/src/img/map.png diff --git a/example/src/img/rocket.png b/apps/example/src/img/rocket.png similarity index 100% rename from example/src/img/rocket.png rename to apps/example/src/img/rocket.png diff --git a/example/src/img/terminal.webp b/apps/example/src/img/terminal.webp similarity index 100% rename from example/src/img/terminal.webp rename to apps/example/src/img/terminal.webp diff --git a/example/src/logPrototypeChain.ts b/apps/example/src/logPrototypeChain.ts similarity index 100% rename from example/src/logPrototypeChain.ts rename to apps/example/src/logPrototypeChain.ts diff --git a/example/src/screens/BenchmarksScreen.tsx b/apps/example/src/screens/BenchmarksScreen.tsx similarity index 100% rename from example/src/screens/BenchmarksScreen.tsx rename to apps/example/src/screens/BenchmarksScreen.tsx diff --git a/example/src/screens/EvalScreen.tsx b/apps/example/src/screens/EvalScreen.tsx similarity index 100% rename from example/src/screens/EvalScreen.tsx rename to apps/example/src/screens/EvalScreen.tsx diff --git a/example/src/screens/HybridObjectTestsScreen.tsx b/apps/example/src/screens/HybridObjectTestsScreen.tsx similarity index 100% rename from example/src/screens/HybridObjectTestsScreen.tsx rename to apps/example/src/screens/HybridObjectTestsScreen.tsx diff --git a/example/src/screens/ViewScreen.tsx b/apps/example/src/screens/ViewScreen.tsx similarity index 100% rename from example/src/screens/ViewScreen.tsx rename to apps/example/src/screens/ViewScreen.tsx diff --git a/example/src/testing/State.ts b/apps/example/src/testing/State.ts similarity index 100% rename from example/src/testing/State.ts rename to apps/example/src/testing/State.ts diff --git a/example/src/testing/backends/harness.ts b/apps/example/src/testing/backends/harness.ts similarity index 100% rename from example/src/testing/backends/harness.ts rename to apps/example/src/testing/backends/harness.ts diff --git a/example/src/testing/backends/throwing.ts b/apps/example/src/testing/backends/throwing.ts similarity index 100% rename from example/src/testing/backends/throwing.ts rename to apps/example/src/testing/backends/throwing.ts diff --git a/example/src/testing/createTestRunner.ts b/apps/example/src/testing/createTestRunner.ts similarity index 100% rename from example/src/testing/createTestRunner.ts rename to apps/example/src/testing/createTestRunner.ts diff --git a/example/src/testing/index.ts b/apps/example/src/testing/index.ts similarity index 100% rename from example/src/testing/index.ts rename to apps/example/src/testing/index.ts diff --git a/example/src/testing/types.ts b/apps/example/src/testing/types.ts similarity index 100% rename from example/src/testing/types.ts rename to apps/example/src/testing/types.ts diff --git a/example/src/turbo-module/ExampleTurboModule.ts b/apps/example/src/turbo-module/ExampleTurboModule.ts similarity index 100% rename from example/src/turbo-module/ExampleTurboModule.ts rename to apps/example/src/turbo-module/ExampleTurboModule.ts diff --git a/example/src/turbo-module/NativeExampleTurboModule.ts b/apps/example/src/turbo-module/NativeExampleTurboModule.ts similarity index 100% rename from example/src/turbo-module/NativeExampleTurboModule.ts rename to apps/example/src/turbo-module/NativeExampleTurboModule.ts diff --git a/example/src/useColors.ts b/apps/example/src/useColors.ts similarity index 100% rename from example/src/useColors.ts rename to apps/example/src/useColors.ts diff --git a/example/src/utils.ts b/apps/example/src/utils.ts similarity index 100% rename from example/src/utils.ts rename to apps/example/src/utils.ts diff --git a/example/tsconfig.json b/apps/example/tsconfig.json similarity index 100% rename from example/tsconfig.json rename to apps/example/tsconfig.json diff --git a/bun.lock b/bun.lock index adcb2b0ab4..b4316d0c4c 100644 --- a/bun.lock +++ b/bun.lock @@ -28,35 +28,7 @@ "typescript-eslint": "^8.60.0", }, }, - "docs": { - "name": "nitro", - "version": "0.0.0", - "dependencies": { - "@docusaurus/core": "3.10.2", - "@docusaurus/faster": "3.10.2", - "@docusaurus/plugin-sitemap": "3.10.2", - "@docusaurus/plugin-vercel-analytics": "3.10.2", - "@docusaurus/preset-classic": "3.10.2", - "@docusaurus/theme-mermaid": "3.10.2", - "@mdx-js/react": "^3.1.1", - "cheerio": "^1.2.0", - "clsx": "^2.1.1", - "esbuild-register": "^3.6.0", - "prism-react-renderer": "^2.4.1", - "react": "19.2.3", - "react-dom": "19.2.3", - "satori": "^0.33.3", - "sharp": "^0.35.4", - }, - "devDependencies": { - "@docusaurus/module-type-aliases": "3.10.2", - "@docusaurus/tsconfig": "3.10.2", - "@docusaurus/types": "3.10.2", - "docusaurus-plugin-llms": "^0.6.0", - "typescript": "~6.0.3", - }, - }, - "example": { + "apps/example": { "name": "react-native-nitro-example", "version": "0.37.1", "dependencies": { @@ -94,6 +66,34 @@ "upng-js": "2.1.0", }, }, + "docs": { + "name": "nitro", + "version": "0.0.0", + "dependencies": { + "@docusaurus/core": "3.10.2", + "@docusaurus/faster": "3.10.2", + "@docusaurus/plugin-sitemap": "3.10.2", + "@docusaurus/plugin-vercel-analytics": "3.10.2", + "@docusaurus/preset-classic": "3.10.2", + "@docusaurus/theme-mermaid": "3.10.2", + "@mdx-js/react": "^3.1.1", + "cheerio": "^1.2.0", + "clsx": "^2.1.1", + "esbuild-register": "^3.6.0", + "prism-react-renderer": "^2.4.1", + "react": "19.2.3", + "react-dom": "19.2.3", + "satori": "^0.33.3", + "sharp": "^0.35.4", + }, + "devDependencies": { + "@docusaurus/module-type-aliases": "3.10.2", + "@docusaurus/tsconfig": "3.10.2", + "@docusaurus/types": "3.10.2", + "docusaurus-plugin-llms": "^0.6.0", + "typescript": "~6.0.3", + }, + }, "packages/nitrogen": { "name": "nitrogen", "version": "0.37.1", @@ -3635,7 +3635,7 @@ "react-native-monorepo-config": ["react-native-monorepo-config@0.3.5", "", { "dependencies": { "escape-string-regexp": "^5.0.0", "fast-glob": "^3.3.3" } }, "sha512-Xdu7k0s4V2FHn2OGnlr3D22Dgt5ij0ek9yzloPoLkHh3rL/jUQbPrawieKsAbkqoenv/7pfPJwMlPT27bvN1fg=="], - "react-native-nitro-example": ["react-native-nitro-example@workspace:example"], + "react-native-nitro-example": ["react-native-nitro-example@workspace:apps/example"], "react-native-nitro-modules": ["react-native-nitro-modules@workspace:packages/react-native-nitro-modules"], diff --git a/docs/docs/guides/running-example-app.md b/docs/docs/guides/running-example-app.md index fdeb637a10..e40bff87ec 100644 --- a/docs/docs/guides/running-example-app.md +++ b/docs/docs/guides/running-example-app.md @@ -20,7 +20,7 @@ This guide will help you understand the [Nitro Example app](https://github.com/m ## The Example app's purpose -Nitro's development always targets the example app (under `example/`). It narrows down user bugs by the following criteria; +Nitro's development always targets the example app (under `apps/example/`). It narrows down user bugs by the following criteria; - If you have a bug in your code, but the same code works in the Nitro example app, it's a **user error** and won't/can't be fixed. - If you have a bug in your code that can also be reproduced inside the Nitro example app, it's a **Nitro bug**, which might get fixed in a future PR. @@ -88,7 +88,7 @@ Then, simply clone (potentially also fork?) the Nitro repository and install its #### iOS - To run the iOS app of Nitro Example, open `example/ios/NitroExample.xcworkspace` in Xcode, and hit run. + To run the iOS app of Nitro Example, open `apps/example/ios/NitroExample.xcworkspace` in Xcode, and hit run. The `bun bootstrap` command should have ensured that Pods are installed. @@ -100,7 +100,7 @@ Then, simply clone (potentially also fork?) the Nitro repository and install its open -a "Android Studio" ``` - Then, open `example/android/` in Android Studio. + Then, open `apps/example/android/` in Android Studio. @@ -120,7 +120,7 @@ Then, simply clone (potentially also fork?) the Nitro repository and install its open -a "Android Studio" ``` - Then, open `example/android/` in Android Studio. + Then, open `apps/example/android/` in Android Studio. diff --git a/docs/docs/resources/contributing.md b/docs/docs/resources/contributing.md index 31e634ddae..82675a9337 100644 --- a/docs/docs/resources/contributing.md +++ b/docs/docs/resources/contributing.md @@ -14,7 +14,7 @@ This page covers **environment setup and reproduction** — how to run Nitro loc The nitro repo is a Bun monorepo, and is set up like this: -- `example/`: A react-native app that uses `react-native-nitro-modules` and `react-native-nitro-test`. +- `apps/example/`: A react-native app that uses `react-native-nitro-modules` and `react-native-nitro-test`. - `packages/` - `/nitrogen/`: The Node app that generates Nitro bindings. On npm, it is called `nitrogen`. - `/react-native-nitro-modules/`: The core Nitro Modules library which contains mostly C++ code. @@ -52,23 +52,23 @@ bun run build If you want to work on the iOS codebase, you also need to install the Pods: ```sh -cd example +cd apps/example bundle install bun pods ``` ### 4. Run the app -After installing all dependencies, you can run the React Native app in `example/`: +After installing all dependencies, you can run the React Native app in `apps/example/`: - 1. Open `example/ios/NitroExample.xcworkspace` in Xcode + 1. Open `apps/example/ios/NitroExample.xcworkspace` in Xcode 2. Select your target (iPhone Simulator) 3. Click Run - 1. Open `example/android` in Android Studio + 1. Open `apps/example/android` in Android Studio 2. Click Gradle Sync 3. Click Run @@ -76,7 +76,7 @@ After installing all dependencies, you can run the React Native app in `example/ ## Reproduce something in the Nitro Example app -With most issue reports, it is required to reproduce the issue in the Nitro example app (`example/`). +With most issue reports, it is required to reproduce the issue in the Nitro example app (`apps/example/`). Whether it's a build error, a nitrogen error, or a runtime error, there needs to be a way to reproduce it here. Usually, you can reproduce issues like this: @@ -92,12 +92,12 @@ See [You don't need to ship a fix](https://github.com/margelo/nitro/blob/main/CO ### Reproduce a build error -If you encounter a build error, compare your setup to the setup in `example/`. -For example, if you have a different setting in your `Podfile`, try changing it here in Nitro `example/` as well to see if it builds here. Submit a PR with the change required to make it fail, and see if the CI fails to build. That alone is enough — you don't need to also fix it. +If you encounter a build error, compare your setup to the setup in `apps/example/`. +For example, if you have a different setting in your `Podfile`, try changing it here in Nitro `apps/example/` as well to see if it builds here. Submit a PR with the change required to make it fail, and see if the CI fails to build. That alone is enough — you don't need to also fix it. ### Reproduce a nitrogen bug -The Nitro `example/` app uses a Nitro Module (`packages/react-native-nitro-test/`) which acts as an example and contains a lot of test code, like `src/specs/TestObject.nitro.ts` ([link](https://github.com/margelo/nitro/blob/main/packages/react-native-nitro-test/src/specs/TestObject.nitro.ts)). If you change something in `TestObject.nitro.ts`, make sure to run nitrogen from the repo root: +The Nitro `apps/example/` app uses a Nitro Module (`packages/react-native-nitro-test/`) which acts as an example and contains a lot of test code, like `src/specs/TestObject.nitro.ts` ([link](https://github.com/margelo/nitro/blob/main/packages/react-native-nitro-test/src/specs/TestObject.nitro.ts)). If you change something in `TestObject.nitro.ts`, make sure to run nitrogen from the repo root: ```sh bun specs @@ -109,7 +109,7 @@ When adding a reproduction, follow the rules in [CONTRIBUTING.md](https://github ### Reproduce a runtime error -Submit a PR that demonstrates this runtime error or crash in the Nitro `example/` app — ideally with a new assertion in [`example/src/getTests.ts`](https://github.com/margelo/nitro/blob/main/example/src/getTests.ts) so the regression is caught by the Harness CI workflows (iOS and Android). A PR that only adds the failing assertion and makes Harness go red is enough on its own; you don't have to land the fix. +Submit a PR that demonstrates this runtime error or crash in the Nitro `apps/example/` app — ideally with a new assertion in [`apps/example/src/getTests.ts`](https://github.com/margelo/nitro/blob/main/apps/example/src/getTests.ts) so the regression is caught by the Harness CI workflows (iOS and Android). A PR that only adds the failing assertion and makes Harness go red is enough on its own; you don't have to land the fix. ## Run Nitro Docs diff --git a/eslint.config.mjs b/eslint.config.mjs index 617df697b3..50436bf3fa 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -74,5 +74,5 @@ export default [ packageConfig('packages/nitrogen', true, false), packageConfig('packages/react-native-nitro-test'), packageConfig('packages/react-native-nitro-test-external'), - packageConfig('example'), + packageConfig('apps/example'), ] diff --git a/package.json b/package.json index 8ecbb165ed..5c42f59a0f 100644 --- a/package.json +++ b/package.json @@ -12,13 +12,13 @@ "packages/nitrogen", "packages/react-native-nitro-test", "packages/react-native-nitro-test-external", - "example", + "apps/*", "docs" ], "scripts": { "postinstall": "bun run build", "build": "bun nitro build && bun nitrogen build && bun nitro-test-external build && bun nitro-test build", - "bootstrap": "bun i && bun run build && cd example && bundle install && bun pods", + "bootstrap": "bun i && bun run build && cd apps/example && bundle install && bun pods", "typecheck": "bun --filter=\"**\" typecheck", "lint": "bun nitro lint && bun nitrogen lint && bun nitro-test lint && bun example lint", "lint-cpp": "./scripts/clang-format.sh", @@ -33,7 +33,7 @@ "nitrogen": "bun --cwd packages/nitrogen", "nitro-test": "bun --cwd packages/react-native-nitro-test", "nitro-test-external": "bun --cwd packages/react-native-nitro-test-external", - "example": "bun --cwd example" + "example": "bun --cwd apps/example" }, "devDependencies": { "@eslint/eslintrc": "^3.3.5", @@ -86,7 +86,7 @@ "path": "version" }, { - "file": "example/package.json", + "file": "apps/example/package.json", "path": "version" } ] diff --git a/packages/react-native-nitro-test/README.md b/packages/react-native-nitro-test/README.md index 7f0bab1ed1..61f7a72041 100644 --- a/packages/react-native-nitro-test/README.md +++ b/packages/react-native-nitro-test/README.md @@ -4,7 +4,7 @@ NitroTest is an example nitro module we use for testing various Nitro features. ## Usage -NitroTest is installed in the [`example/`](../../example) app. +NitroTest is installed in the [`apps/example/`](../../apps/example) app. The main C++ testing hybrid object is exported; ```ts