Skip to content
Source
Sign inSign up

mobile-screens-fork.md

28 lines1.5 KB

1# Building the mobile Screens dependency
2​
3The mobile v5 stack uses a committed tarball from the
4[T3 Screens fork](https://github.com/pingdotgg/react-native-screens/tree/t3-v5.0.0-t3.50).
5The fork owns the integration changes; the app does not patch this package.
6Each archive includes compiled JavaScript, declarations, native source and
7`t3-fork.json` recording its version, source commit and upstream base.
8​
9To reproduce an archive, use Node 24 and the repository's pinned Yarn from a
10clean fork checkout at the source commit recorded in its `t3-fork.json`:
11​
12```sh
13yarn --cwd /tmp/t3-screens-fork pack:t3 /absolute/path/to/t3code/apps/mobile/deps
14```
15​
16For an update, sync the fork's `main` with upstream, merge it and the required
17proposal branches into `t3/main`, increment the `5.0.0-t3.N` version, pin `t3Fork.upstreamCommit` to the
18integrated upstream SHA and commit.
19Run `pack:t3` from that clean checkout and tag the source as `t3-v<version>`.
20Publish the source commit and tag to the fork before submitting the app change.
21Replace the old archive, update `apps/mobile/package.json` and run `vp i` to
22regenerate the lockfile. Verify mobile types and affected navigation tests.
23Changes to native source also require rebuilding and testing the native client.
24​
25The same iOS binary supports iPhone, iPad, and Duo. UIKit hinge updates enable
26phone workspace columns at runtime; regular phones retain portrait rotation.
27Use the normal EAS build profiles and update channels. Duo support requires a
28binary built with the iOS 27.1 SDK; an OTA cannot add the native APIs.