diff --git a/packages/typegpu-cli/src/create.ts b/packages/typegpu-cli/src/create.ts index 4418337438..0f554ccd19 100644 --- a/packages/typegpu-cli/src/create.ts +++ b/packages/typegpu-cli/src/create.ts @@ -113,7 +113,7 @@ export async function createProject(cwd: string, options?: CreateProjectOptions) const cdPath = path.relative(cwd, root); const installCmd = resolveCommand(pm, 'install', []); const prebuildCmd = projectTemplate.includes('expo') - ? { command: 'npx', args: ['expo', 'prebuild'] } + ? resolveCommand(pm, 'execute', ['expo', 'prebuild']) : undefined; const runCmd = projectTemplate.includes('expo') ? resolveCommand(pm, 'run', ['ios # or android']) diff --git a/packages/typegpu-cli/src/utils/inputs.ts b/packages/typegpu-cli/src/utils/inputs.ts index f6dd4462c4..05c9e8f0bb 100644 --- a/packages/typegpu-cli/src/utils/inputs.ts +++ b/packages/typegpu-cli/src/utils/inputs.ts @@ -66,7 +66,7 @@ export async function multiselectPkgs(pkg: PackageJson) { } const addons = await p.multiselect({ - message: "Pick add-ons to install ('space' to select, 'enter' to confirm):", + message: 'Pick add-ons to install:', options: options, required: false, }); diff --git a/packages/typegpu-cli/templates/template-expo-bare/_package.json b/packages/typegpu-cli/templates/template-expo-bare/_package.json index 51416be643..231c5c0994 100644 --- a/packages/typegpu-cli/templates/template-expo-bare/_package.json +++ b/packages/typegpu-cli/templates/template-expo-bare/_package.json @@ -13,37 +13,45 @@ "types": "tsc --noEmit -p tsconfig.json" }, "dependencies": { - "@typegpu/react": "^0.11.0", - "expo": "~54.0.21", - "react": "19.1.0", - "react-dom": "19.1.0", - "react-native": "0.81.5", - "react-native-safe-area-context": "~5.6.0", + "@typegpu/react": "^0.11.2", + "expo": "~57.0.4", + "expo-build-properties": "~57.0.3", + "expo-splash-screen": "~57.0.2", + "react": "19.2.3", + "react-dom": "19.2.3", + "react-native": "0.86.0", + "react-native-safe-area-context": "~5.7.0", "react-native-web": "^0.21.0", "react-native-webgpu": "^0.5.11", - "typegpu": "^0.11.6", - "unplugin-typegpu": "^0.11.4" + "react-native-worklets": "0.10.0", + "typegpu": "^0.11.9", + "unplugin-typegpu": "^0.11.6" }, "devDependencies": { "@babel/core": "^7.28.5", - "@types/react": "~19.1.10", + "@types/react": "~19.2.17", "@webgpu/types": "^0.1.69", - "babel-preset-expo": "^54.0.0", + "babel-preset-expo": "~57.0.2", "eslint": "^9.38.0", "eslint-plugin-typegpu": "^0.11.1", "oxfmt": "^0.49.0", "oxlint": "^1.64.0", - "typescript": "npm:tsover@5.9.2" + "typescript": "npm:tsover@6.0.2" }, "resolutions": { - "typescript": "npm:tsover@5.9.2" + "typescript": "npm:tsover@6.0.2" }, "overrides": { - "typescript": "npm:tsover@5.9.2" + "typescript": "npm:tsover@6.0.2" }, "pnpm": { "overrides": { - "typescript": "npm:tsover@5.9.2" + "typescript": "npm:tsover@6.0.2" + } + }, + "expo": { + "install": { + "exclude": ["typescript"] } } } diff --git a/packages/typegpu-cli/templates/template-expo-bare/app.json b/packages/typegpu-cli/templates/template-expo-bare/app.json index 0917eb6fe0..34e5826e5c 100644 --- a/packages/typegpu-cli/templates/template-expo-bare/app.json +++ b/packages/typegpu-cli/templates/template-expo-bare/app.json @@ -5,13 +5,6 @@ "version": "1.0.0", "orientation": "portrait", "icon": "./assets/icon.png", - "userInterfaceStyle": "automatic", - "newArchEnabled": true, - "splash": { - "image": "./assets/splash-icon.png", - "resizeMode": "contain", - "backgroundColor": "#ffffff" - }, "ios": { "supportsTablet": true, "bundleIdentifier": "com.anonymous.typegpubareexpo" @@ -25,6 +18,25 @@ }, "web": { "favicon": "./assets/favicon.png" - } + }, + "plugins": [ + [ + "expo-splash-screen", + { + "backgroundColor": "#ffffff", + "image": "./assets/splash-icon.png", + "imageWidth": 200, + "resizeMode": "contain" + } + ], + [ + "expo-build-properties", + { + "android": { + "minSdkVersion": 26 + } + } + ] + ] } }