Skip to content

React Native in workspaces: Start with oauth-cross-platform/mobile [1/N] - #1399

Open
janjakubnanista wants to merge 9 commits into
mainfrom
jan/react-native-example
Open

React Native in workspaces: Start with oauth-cross-platform/mobile [1/N]#1399
janjakubnanista wants to merge 9 commits into
mainfrom
jan/react-native-example

Conversation

@janjakubnanista

@janjakubnanista janjakubnanista commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Summary & Motivation

Until now we kept the react-native examples out of the pnpm workspaces. This PR:

How I Tested These Changes

Locally on an iOS simulator + CI for typecheck

Did you add a changeset?

Yes, to @turnkey/react-native-wallet-kit

@socket-security

socket-security Bot commented Jun 11, 2026

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn High
Obfuscated code: npm @expo/cli is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: pnpm-lock.yamlnpm/@react-three/fiber@9.5.0npm/expo@56.0.11npm/@solana/wallet-adapter-wallets@0.19.37npm/@expo/cli@56.1.15

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@expo/cli@56.1.15. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn High
Obfuscated code: npm @react-native/debugger-frontend is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: pnpm-lock.yamlnpm/@react-three/fiber@9.5.0npm/@buildonspark/issuer-sdk@0.1.23npm/react-native@0.85.3npm/@buildonspark/spark-sdk@0.8.6npm/expo@56.0.11npm/react-native-passkey@3.0.0npm/@react-native-async-storage/async-storage@2.2.0npm/@solana/wallet-adapter-react@0.15.39npm/@solana/wallet-adapter-wallets@0.19.37npm/porto@0.2.19npm/wagmi@2.17.5npm/@react-native/debugger-frontend@0.85.3

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@react-native/debugger-frontend@0.85.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn High
Obfuscated code: npm @react-native/debugger-frontend is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: pnpm-lock.yamlnpm/@react-three/fiber@9.5.0npm/@buildonspark/issuer-sdk@0.1.23npm/react-native@0.85.3npm/@buildonspark/spark-sdk@0.8.6npm/expo@56.0.11npm/react-native-passkey@3.0.0npm/@react-native-async-storage/async-storage@2.2.0npm/@solana/wallet-adapter-react@0.15.39npm/@solana/wallet-adapter-wallets@0.19.37npm/porto@0.2.19npm/wagmi@2.17.5npm/@react-native/debugger-frontend@0.85.3

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@react-native/debugger-frontend@0.85.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn High
Obfuscated code: npm @typescript-eslint/eslint-plugin is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: pnpm-lock.yamlnpm/eslint-config-expo@56.0.4npm/@typescript-eslint/eslint-plugin@8.61.0

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@typescript-eslint/eslint-plugin@8.61.0. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

@janjakubnanista janjakubnanista changed the title React Native in mono: Start with oauth-cross-platform/mobile React Native in mono: Start with oauth-cross-platform/mobile [1/N] Jun 11, 2026
@codesandbox-ci

codesandbox-ci Bot commented Jun 11, 2026

Copy link
Copy Markdown

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit 45bd9db:

Sandbox Source
@turnkey/example-react-components Configuration

@janjakubnanista
janjakubnanista force-pushed the jan/react-native-example branch 2 times, most recently from 33a09fa to 7793b79 Compare June 11, 2026 20:23
@janjakubnanista
janjakubnanista force-pushed the jan/react-native-example branch from 6e25fc6 to 8ca6c05 Compare June 11, 2026 21:30
@janjakubnanista
janjakubnanista force-pushed the jan/react-native-example branch from 8ca6c05 to 25875f6 Compare June 11, 2026 21:32
@janjakubnanista
janjakubnanista force-pushed the jan/react-native-example branch from 25875f6 to f78e0fe Compare June 11, 2026 21:46
@janjakubnanista janjakubnanista changed the title React Native in mono: Start with oauth-cross-platform/mobile [1/N] React Native in workspaces: Start with oauth-cross-platform/mobile [1/N] Jun 12, 2026

@ethankonk ethankonk left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is looking super promising! Can't wait for this!

"react-native": "0.81.4",
"react-native-gesture-handler": "~2.28.0",
"react-native-inappbrowser-reborn": "^3.7.1",
"react-native-safe-area-context": "~5.6.0",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious why these new dev dependencies were added, do we use them in examples only? Why add them at the package level?

? window.location.hostname
: DeviceInfo.getApplicationName() ||
DeviceInfo.getBundleId() ||
"mobile-app";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't believe this is breaking but anyone that does rely on passkey names being named based on their device app name will need to update their config with their app name.

Not a huge deal but is there a reason why react-native-device-info needs to be removed? Is that the package that blocks us from using @turnkey/react-native-wallet-kit in our workspace?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

react-native-device-info does not play nice with expo - you would need to create a custom build for it to run (which is out of scope for an example that does not have a build step). Expo, in a managed workflow, uses expo-device rather than react-native-device-info. So removing this dependency not only fixes this issue but makes this code compatibility a bit wider

Comment thread pnpm-workspace.yaml
@@ -5,14 +5,14 @@ packages:
- "!examples/demos/with-react-native-wallet-kit/**"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will it be possible to remove with-react-native-wallet-kit from the workspace block with these changes as well? That would be amazing

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah I am going one by one though

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants