create-expo-stack 2.21.3 → 2.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +30 -16
  2. package/build/cli.js +5 -6
  3. package/build/commands/create-expo-stack.js +3 -2
  4. package/build/templates/base/.gitignore.ejs +1 -3
  5. package/build/templates/base/App.tsx.ejs +5 -3
  6. package/build/templates/base/app.json.ejs +18 -9
  7. package/build/templates/base/components/Container.tsx.ejs +2 -1
  8. package/build/templates/base/css-env.d.ts.ejs +1 -0
  9. package/build/templates/base/eslint.config.js.ejs +1 -2
  10. package/build/templates/base/package.json.ejs +35 -30
  11. package/build/templates/base/tsconfig.json.ejs +9 -4
  12. package/build/templates/packages/expo-router/drawer/app/_layout.tsx.ejs +5 -3
  13. package/build/templates/packages/expo-router/stack/app/_layout.tsx.ejs +5 -3
  14. package/build/templates/packages/expo-router/tabs/app/_layout.tsx.ejs +5 -3
  15. package/build/templates/packages/nativewindui/components/Container.tsx.ejs +2 -1
  16. package/build/templates/packages/nativewindui/components/nativewindui/Icon/Icon.ios.tsx.ejs +7 -4
  17. package/build/templates/packages/nativewindui/components/nativewindui/Icon/types.ts.ejs +4 -3
  18. package/build/templates/packages/react-navigation/App.tsx.ejs +5 -3
  19. package/build/types/utilities/generateProjectFiles.d.ts +2 -0
  20. package/build/types/utilities/systemCommand.d.ts +3 -1
  21. package/build/utilities/clearNavigationPackages.js +2 -2
  22. package/build/utilities/clearStylingPackages.js +2 -2
  23. package/build/utilities/configAnalytics.js +2 -3
  24. package/build/utilities/configureProjectFiles.js +5 -4
  25. package/build/utilities/copyBaseAssets.js +2 -3
  26. package/build/utilities/generateNWUI.js +2 -3
  27. package/build/utilities/generateProjectFiles.js +25 -3
  28. package/build/utilities/getPackageManager.js +5 -6
  29. package/build/utilities/printOutput.js +54 -19
  30. package/build/utilities/renderTitle.js +2 -3
  31. package/build/utilities/runCLI.js +2 -3
  32. package/build/utilities/runEasConfigure.js +2 -3
  33. package/build/utilities/runIgnite.js +2 -3
  34. package/build/utilities/showHelp.js +2 -3
  35. package/build/utilities/systemCommand.js +13 -5
  36. package/build/utilities/usePackage.js +2 -3
  37. package/build/utilities/validateProjectName.js +2 -3
  38. package/package.json +1 -1
package/README.md CHANGED
@@ -39,7 +39,7 @@ Support this project by <a href="https://github.com/sponsors/roninoss" target="_
39
39
 
40
40
  ## Description
41
41
 
42
- This CLI tool is designed to help you get started with React Native and Expo as quickly as possible. The CLI options allow you to configure your project with Typescript, file-based routing with Expo Router, configuration-based navigation via React-Navigation, styling with NativeWind, Unistyles, or StyleSheets and authentication via Supabase or Firebase.
42
+ This CLI tool is designed to help you get started with React Native and Expo as quickly as possible. The CLI options allow you to configure your project with Typescript, file-based routing with Expo Router, configuration-based navigation via React-Navigation, styling with Nativewind, Unistyles, or StyleSheets and authentication via Supabase or Firebase.
43
43
 
44
44
  You can also use flags such as `--noInstall`, `--noGit`, and `--default` in order to customize your project. The CLI will attempt to automatically determine your package manager of choice but you can also pass in your preferred package manager via `--npm`, `--yarn`, `--pnpm`, or `--bun`. Roadmap coming soon...
45
45
 
@@ -71,7 +71,7 @@ Each project is generated based on the results of the CLI, on a per-file basis.
71
71
  | Expo Status Bar | Status Bar Library | v2 | Status bar support |
72
72
  | Expo System UI | System UI Library | v5 | System UI support |
73
73
  | Expo Web Browser | Web Browser Library | v14 | Open links in the browser |
74
- | NativeWind | UI Framework | v4.1 | Tailwind CSS for React Native |
74
+ | Nativewind | UI Framework | v4.1 | Tailwind CSS for React Native |
75
75
  | Unistyles | UI Framework | v3 | Superset of StyleSheet |
76
76
  | Safe Area Context | Safe Area Library | v5 | Safe area support |
77
77
  | React Native Web | Web Support | v0.20 | React Native for Web |
@@ -222,14 +222,21 @@ Thanks go to these wonderful people:
222
222
  <sub><b>Jacek Pudysz</b></sub>
223
223
  </a>
224
224
  </td>
225
+ <td align="center">
226
+ <a href="https://github.com/DavidJGrimsley">
227
+ <img src="https://avatars.githubusercontent.com/u/114373822?v=4" width="100;" alt="DavidJGrimsley"/>
228
+ <br />
229
+ <sub><b>David Grimsley</b></sub>
230
+ </a>
231
+ </td></tr>
232
+ <tr>
225
233
  <td align="center">
226
234
  <a href="https://github.com/coyksdev">
227
235
  <img src="https://avatars.githubusercontent.com/u/19565694?v=4" width="100;" alt="coyksdev"/>
228
236
  <br />
229
237
  <sub><b>Gerald</b></sub>
230
238
  </a>
231
- </td></tr>
232
- <tr>
239
+ </td>
233
240
  <td align="center">
234
241
  <a href="https://github.com/VadimNotJustDev">
235
242
  <img src="https://avatars.githubusercontent.com/u/16936043?v=4" width="100;" alt="VadimNotJustDev"/>
@@ -264,15 +271,15 @@ Thanks go to these wonderful people:
264
271
  <br />
265
272
  <sub><b>Gilson Alencar</b></sub>
266
273
  </a>
267
- </td>
274
+ </td></tr>
275
+ <tr>
268
276
  <td align="center">
269
277
  <a href="https://github.com/mwarger">
270
278
  <img src="https://avatars.githubusercontent.com/u/686823?v=4" width="100;" alt="mwarger"/>
271
279
  <br />
272
280
  <sub><b>Mat Warger</b></sub>
273
281
  </a>
274
- </td></tr>
275
- <tr>
282
+ </td>
276
283
  <td align="center">
277
284
  <a href="https://github.com/gabimoncha">
278
285
  <img src="https://avatars.githubusercontent.com/u/39256258?v=4" width="100;" alt="gabimoncha"/>
@@ -307,15 +314,15 @@ Thanks go to these wonderful people:
307
314
  <br />
308
315
  <sub><b>Sean Boult</b></sub>
309
316
  </a>
310
- </td>
317
+ </td></tr>
318
+ <tr>
311
319
  <td align="center">
312
320
  <a href="https://github.com/Viraj-10">
313
321
  <img src="https://avatars.githubusercontent.com/u/66306233?v=4" width="100;" alt="Viraj-10"/>
314
322
  <br />
315
323
  <sub><b>Viraj Joshi</b></sub>
316
324
  </a>
317
- </td></tr>
318
- <tr>
325
+ </td>
319
326
  <td align="center">
320
327
  <a href="https://github.com/YounessHassoune">
321
328
  <img src="https://avatars.githubusercontent.com/u/36106440?v=4" width="100;" alt="YounessHassoune"/>
@@ -350,15 +357,15 @@ Thanks go to these wonderful people:
350
357
  <br />
351
358
  <sub><b>TheBlondeAlex</b></sub>
352
359
  </a>
353
- </td>
360
+ </td></tr>
361
+ <tr>
354
362
  <td align="center">
355
363
  <a href="https://github.com/imranbarbhuiya">
356
364
  <img src="https://avatars.githubusercontent.com/u/74945038?v=4" width="100;" alt="imranbarbhuiya"/>
357
365
  <br />
358
366
  <sub><b>Parbez</b></sub>
359
367
  </a>
360
- </td></tr>
361
- <tr>
368
+ </td>
362
369
  <td align="center">
363
370
  <a href="https://github.com/NomadNiko">
364
371
  <img src="https://avatars.githubusercontent.com/u/123768788?v=4" width="100;" alt="NomadNiko"/>
@@ -366,6 +373,13 @@ Thanks go to these wonderful people:
366
373
  <sub><b>Null</b></sub>
367
374
  </a>
368
375
  </td>
376
+ <td align="center">
377
+ <a href="https://github.com/marcm0de">
378
+ <img src="https://avatars.githubusercontent.com/u/141629050?v=4" width="100;" alt="marcm0de"/>
379
+ <br />
380
+ <sub><b>Null</b></sub>
381
+ </a>
382
+ </td>
369
383
  <td align="center">
370
384
  <a href="https://github.com/asapMaki">
371
385
  <img src="https://avatars.githubusercontent.com/u/30200380?v=4" width="100;" alt="asapMaki"/>
@@ -386,7 +400,8 @@ Thanks go to these wonderful people:
386
400
  <br />
387
401
  <sub><b>Joar Karlsson</b></sub>
388
402
  </a>
389
- </td>
403
+ </td></tr>
404
+ <tr>
390
405
  <td align="center">
391
406
  <a href="https://github.com/boek">
392
407
  <img src="https://avatars.githubusercontent.com/u/1250545?v=4" width="100;" alt="boek"/>
@@ -400,8 +415,7 @@ Thanks go to these wonderful people:
400
415
  <br />
401
416
  <sub><b>Null</b></sub>
402
417
  </a>
403
- </td></tr>
404
- <tr>
418
+ </td>
405
419
  <td align="center">
406
420
  <a href="https://github.com/claudesortwell">
407
421
  <img src="https://avatars.githubusercontent.com/u/41422239?v=4" width="100;" alt="claudesortwell"/>
package/build/cli.js CHANGED
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.run = void 0;
12
+ exports.run = run;
13
13
  const gluegun_1 = require("gluegun");
14
14
  /**
15
15
  * Create the cli and kick it off
@@ -28,10 +28,10 @@ function run() {
28
28
  .version() // provides default for version, v, --version, -v
29
29
  .create();
30
30
  // Node version check
31
- const [major, minor, _patch] = process.versions.node.split('.').map(Number);
32
- const isVersionOk = major > 20 || (major === 20 && minor >= 19);
31
+ const [major, minor, patch] = process.versions.node.split('.').map(Number);
32
+ const isVersionOk = major > 20 || (major === 20 && (minor > 19 || (minor === 19 && patch >= 4)));
33
33
  if (!isVersionOk) {
34
- console.error(`Error: rn-new requires Node.js version 20.19.0 or higher, or version 22.0.0 or higher.`);
34
+ console.error(`Error: create-expo-stack requires Node.js version 20.19.4 or higher.`);
35
35
  console.error(`You are currently running Node.js ${process.versions.node}.`);
36
36
  console.error('Please update your Node version.');
37
37
  process.exit(1);
@@ -45,5 +45,4 @@ function run() {
45
45
  return toolbox;
46
46
  });
47
47
  }
48
- exports.run = run;
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxxQ0FBZ0M7QUFFaEM7O0dBRUc7QUFDSCxTQUFzQixHQUFHOztRQUN2QixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQzFCLHVCQUF1QjtRQUN2QixNQUFNLEdBQUcsR0FBRyxJQUFBLGVBQUssR0FBRTthQUNoQixLQUFLLENBQUMsbUJBQW1CLENBQUM7YUFDMUIsR0FBRyxDQUFDLFNBQVMsQ0FBQzthQUNkLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QixRQUFRLEVBQUUscUJBQXFCO1lBQy9CLE1BQU0sRUFBRSxJQUFJO1NBQ2IsQ0FBQzthQUNELE9BQU8sRUFBRSxDQUFDLGlEQUFpRDthQUMzRCxNQUFNLEVBQUUsQ0FBQztRQUVaLHFCQUFxQjtRQUNyQixNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVFLE1BQU0sV0FBVyxHQUFHLEtBQUssR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssRUFBRSxJQUFJLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVoRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyx3RkFBd0YsQ0FBQyxDQUFDO1lBQ3hHLE9BQU8sQ0FBQyxLQUFLLENBQUMscUNBQXFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztZQUM3RSxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDbEQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQixDQUFDO1FBRUQseUZBQXlGO1FBQ3pGLDBFQUEwRTtRQUMxRSx3SUFBd0k7UUFDeEksYUFBYTtRQUNiLE1BQU0sT0FBTyxHQUFHLE1BQU0sR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwQyxxQ0FBcUM7UUFDckMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUFBO0FBaENELGtCQWdDQyJ9
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUtBLGtCQWdDQztBQXJDRCxxQ0FBZ0M7QUFFaEM7O0dBRUc7QUFDSCxTQUFzQixHQUFHOztRQUN2QixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQzFCLHVCQUF1QjtRQUN2QixNQUFNLEdBQUcsR0FBRyxJQUFBLGVBQUssR0FBRTthQUNoQixLQUFLLENBQUMsbUJBQW1CLENBQUM7YUFDMUIsR0FBRyxDQUFDLFNBQVMsQ0FBQzthQUNkLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QixRQUFRLEVBQUUscUJBQXFCO1lBQy9CLE1BQU0sRUFBRSxJQUFJO1NBQ2IsQ0FBQzthQUNELE9BQU8sRUFBRSxDQUFDLGlEQUFpRDthQUMzRCxNQUFNLEVBQUUsQ0FBQztRQUVaLHFCQUFxQjtRQUNyQixNQUFNLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLE1BQU0sV0FBVyxHQUFHLEtBQUssR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVqRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyxzRUFBc0UsQ0FBQyxDQUFDO1lBQ3RGLE9BQU8sQ0FBQyxLQUFLLENBQUMscUNBQXFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztZQUM3RSxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDbEQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQixDQUFDO1FBRUQseUZBQXlGO1FBQ3pGLDBFQUEwRTtRQUMxRSx3SUFBd0k7UUFDeEksYUFBYTtRQUNiLE1BQU0sT0FBTyxHQUFHLE1BQU0sR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwQyxxQ0FBcUM7UUFDckMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUFBIn0=
@@ -17,6 +17,7 @@ const utilities_1 = require("../utilities");
17
17
  const constants_1 = require("../constants");
18
18
  const types_1 = require("../types");
19
19
  const clearStylingPackages_1 = __importDefault(require("../utilities/clearStylingPackages"));
20
+ const systemCommand_1 = require("../utilities/systemCommand");
20
21
  const validateProjectName_1 = require("../utilities/validateProjectName");
21
22
  const prompts_1 = require("@clack/prompts");
22
23
  const clearNavigationPackages_1 = __importDefault(require("../utilities/clearNavigationPackages"));
@@ -280,7 +281,7 @@ const command = {
280
281
  // Function that outputs a string given the CLI results and the packageManager. The outputted string should be a command that can be run to recreate the project
281
282
  const generateRerunScript = (cliResults) => {
282
283
  var _a, _b;
283
- let script = `npx rn-new@latest ${cliResults.projectName} `;
284
+ let script = `npx rn-new@latest ${(0, systemCommand_1.quoteShellArg)(cliResults.projectName)} `;
284
285
  const isNativewindUISelected = cliResults.packages.some((p) => p.name === 'nativewindui');
285
286
  if (isNativewindUISelected) {
286
287
  const flagToUse = options.nwui ? 'nwui' : 'nativewindui';
@@ -400,4 +401,4 @@ const command = {
400
401
  })
401
402
  };
402
403
  exports.default = command;
403
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWV4cG8tc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvY3JlYXRlLWV4cG8tc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFDQSxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFN0IsNENBVXNCO0FBQ3RCLDRDQU9zQjtBQUN0QixvQ0FBeUQ7QUFDekQsNkZBQXFFO0FBQ3JFLDBFQUF1RTtBQUN2RSw0Q0FBK0Q7QUFDL0QsbUdBQTJFO0FBRTNFLE1BQU0sT0FBTyxHQUFtQjtJQUM5QixJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCLFdBQVcsRUFBRSwyQkFBMkI7SUFDeEMsR0FBRyxFQUFFLENBQU8sT0FBTyxFQUFFLEVBQUU7O1FBQ3JCLE1BQU0sRUFDSixVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEVBQ25DLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFDOUIsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUNuRCxNQUFNLEVBQ1AsR0FBRyxPQUFPLENBQUM7UUFFWixNQUFNLHVCQUF1QixHQUFHLEdBQUcsRUFBRTtZQUNuQyxJQUFJLENBQUMsNkRBQTZELENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQ0Ysd0hBQXdILENBQ3pILENBQUM7WUFDRixJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUM7UUFFRixtQkFBbUI7UUFDbkIsSUFBSSxPQUFPLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM5QixJQUFBLG9CQUFRLEVBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNuQyxPQUFPO1FBQ1QsQ0FBQztRQUVELHNCQUFzQjtRQUN0QixJQUFJLE9B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
404
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWV4cG8tc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvY3JlYXRlLWV4cG8tc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFDQSxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFN0IsNENBVXNCO0FBQ3RCLDRDQU9zQjtBQUN0QixvQ0FBeUQ7QUFDekQsNkZBQXFFO0FBQ3JFLDhEQUEyRDtBQUMzRCwwRUFBdUU7QUFDdkUsNENBQStEO0FBQy9ELG1HQUEyRTtBQUUzRSxNQUFNLE9BQU8sR0FBbUI7SUFDOUIsSUFBSSxFQUFFLG1CQUFtQjtJQUN6QixXQUFXLEVBQUUsMkJBQTJCO0lBQ3hDLEdBQUcsRUFBRSxDQUFPLE9BQU8sRUFBRSxFQUFFOztRQUNyQixNQUFNLEVBQ0osVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxFQUNuQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQzlCLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFDbkQsTUFBTSxFQUNQLEdBQUcsT0FBTyxDQUFDO1FBRVosTUFBTSx1QkFBdUIsR0FBRyxHQUFHLEVBQUU7WUFDbkMsSUFBSSxDQUFDLDZEQUE2RCxDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUNGLHdIQUF3SCxDQUN6SCxDQUFDO1lBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDO1FBRUYsbUJBQW1CO1FBQ25CLElBQUksT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDOUIsSUFBQSxvQkFBUSxFQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbkMsT0FBTztRQUNULENBQUM7UUFFRCxzQkFBc0I7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
@@ -11,8 +11,6 @@ npm-debug.*
11
11
  web-build/
12
12
  <% if (props.navigationPackage?.name === "expo-router") { %># expo router
13
13
  expo-env.d.ts<% } %>
14
- <% if (props.stylingPackage?.name === "tamagui") { %># tamagui
15
- .tamagui/<% } %>
16
14
  <% if ((props.authenticationPackage?.name === "supabase") || (props.authenticationPackage?.name === "firebase" || (props.analyticsPackage?.name === 'vexo-analytics'))) { %># firebase/supabase/vexo
17
15
  .env<% } %>
18
16
 
@@ -23,4 +21,4 @@ android
23
21
  .DS_Store
24
22
 
25
23
  # Temporary files created by Metro to check the health of the file watcher
26
- .metro-health-check*
24
+ .metro-health-check*
@@ -18,9 +18,11 @@ import { StatusBar } from 'expo-status-bar';
18
18
  <% } %>
19
19
 
20
20
  <% if (props.analyticsPackage?.name === "vexo-analytics") { %>
21
- import { vexo } from 'vexo-analytics';
22
-
23
- vexo(process.env.EXPO_PUBLIC_VEXO_API_KEY);
21
+ const vexoApiKey = process.env.EXPO_PUBLIC_VEXO_API_KEY;
22
+ if (vexoApiKey) {
23
+ const { vexo } = require('vexo-analytics');
24
+ vexo(vexoApiKey);
25
+ }
24
26
  <% } %>
25
27
 
26
28
  export default function App() {
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "expo": {
3
3
  "name": "<%= props.projectName %>",
4
- "slug": "<%= props.projectName %>",
4
+ "slug": "<%= props.projectSlug %>",
5
5
  "version": "1.0.0",
6
6
  <% if (props.stylingPackage?.name === "unistyles") { %>
7
7
  "newArchEnabled": true,
8
8
  <% } %>
9
9
  <% if (props.navigationPackage?.name === 'expo-router') { %>
10
- "scheme": "<%= props.projectName %>",
10
+ "scheme": "<%= props.projectScheme %>",
11
11
  "platforms": ["ios", "android"],
12
12
  "web": {
13
13
  "bundler": "metro",
@@ -15,7 +15,14 @@
15
15
  "favicon": "./assets/favicon.png"
16
16
  },
17
17
  "plugins": [
18
- "expo-router"
18
+ "expo-router",
19
+ [
20
+ "expo-splash-screen",
21
+ {
22
+ "image": "./assets/splash.png",
23
+ "backgroundColor": "#ffffff"
24
+ }
25
+ ]
19
26
  <% if (props.internalizationPackage?.name === "i18next") { %>
20
27
  ,"expo-localization"
21
28
  <% } %>
@@ -36,8 +43,15 @@
36
43
  },
37
44
  <% } %>
38
45
  "plugins": [
46
+ [
47
+ "expo-splash-screen",
48
+ {
49
+ "image": "./assets/splash.png",
50
+ "backgroundColor": "#ffffff"
51
+ }
52
+ ]
39
53
  <% if (props.internalizationPackage?.name === "i18next") { %>
40
- "expo-localization"
54
+ ,"expo-localization"
41
55
  <% } %>
42
56
  ],
43
57
  <% } %>
@@ -48,11 +62,6 @@
48
62
  <% } else { %>
49
63
  "userInterfaceStyle": "light",
50
64
  <% } %>
51
- "splash": {
52
- "image": "./assets/splash.png",
53
- "resizeMode": "contain",
54
- "backgroundColor": "#ffffff"
55
- },
56
65
  "assetBundlePatterns": [
57
66
  "**/*"
58
67
  ],
@@ -1,4 +1,5 @@
1
- import { StyleSheet, SafeAreaView } from 'react-native';
1
+ import { StyleSheet } from 'react-native';
2
+ import { SafeAreaView } from 'react-native-safe-area-context';
2
3
 
3
4
  export const Container = ({ children }: { children: React.ReactNode }) => {
4
5
  return <SafeAreaView style={styles.container}>{children}</SafeAreaView>;
@@ -0,0 +1 @@
1
+ declare module '*.css';
@@ -1,4 +1,3 @@
1
- /* eslint-env node */
2
1
  const { defineConfig } = require('eslint/config');
3
2
  const expoConfig = require('eslint-config-expo/flat');
4
3
 
@@ -12,4 +11,4 @@ module.exports = defineConfig([
12
11
  'react/display-name': 'off',
13
12
  },
14
13
  },
15
- ]);
14
+ ]);
@@ -34,28 +34,29 @@
34
34
  "nativewind": "latest",
35
35
  <% } %>
36
36
  <% if (props.stylingPackage?.name === "nativewindui") { %>
37
+ "@react-navigation/elements": "^2.9.25",
37
38
  "@shopify/flash-list": "2.0.2",
38
39
  "class-variance-authority": "^0.7.0",
39
40
  "clsx": "^2.1.0",
40
41
  "tailwind-merge": "^2.2.1",
41
42
  "react-native-uitextview": "^1.1.4",
42
43
  "rn-icon-mapper": "^0.0.1",
43
- "expo-haptics": "~15.0.7",
44
- "expo-symbols": "~1.0.7",
44
+ "expo-haptics": "~56.0.3",
45
+ "expo-symbols": "~56.0.5",
45
46
  <% if (props.stylingPackage?.options.selectedComponents.includes('date-picker')) { %>
46
- "@react-native-community/datetimepicker": "8.4.4",
47
+ "@react-native-community/datetimepicker": "9.1.0",
47
48
  <% } %>
48
49
  <% if (props.stylingPackage?.options.selectedComponents.includes('picker')) { %>
49
- "@react-native-picker/picker": "2.11.1",
50
+ "@react-native-picker/picker": "2.11.4",
50
51
  <% } %>
51
52
  <% if (props.stylingPackage?.options.selectedComponents.includes('action-sheet')) { %>
52
53
  "@expo/react-native-action-sheet": "^4.0.1",
53
54
  <% } %>
54
55
  <% if (props.stylingPackage?.options.selectedComponents.includes('ratings-indicator')) { %>
55
- "expo-store-review": "~9.0.8",
56
+ "expo-store-review": "~56.0.3",
56
57
  <% } %>
57
58
  <% if (props.stylingPackage?.options.selectedComponents.includes('slider')) { %>
58
- "@react-native-community/slider": "5.0.1",
59
+ "@react-native-community/slider": "5.2.0",
59
60
  <% } %>
60
61
  <% } %>
61
62
 
@@ -71,13 +72,14 @@
71
72
 
72
73
  <% if (props.navigationPackage?.type === "navigation") { %>
73
74
  "@react-navigation/native": "^7.1.6",
74
- "react-native-gesture-handler": "~2.28.0",
75
- "react-native-screens": "~4.16.0",
75
+ "react-native-gesture-handler": "~2.31.1",
76
+ "react-native-screens": "4.25.2",
76
77
  <% } %>
77
78
 
78
79
  <% if (props.navigationPackage?.name === "react-navigation") { %>
79
80
  "@react-navigation/stack": "^7.4.8",
80
81
  "@expo/vector-icons": "^15.0.2",
82
+ "expo-font": "~56.0.5",
81
83
  <% } %>
82
84
 
83
85
  <% if (props.analyticsPackage?.name === "vexo-analytics") { %>
@@ -97,56 +99,59 @@
97
99
  <% } %>
98
100
 
99
101
  <% if (props.navigationPackage?.name === "expo-router") { %>
102
+ "@expo/log-box": "^56.0.12",
100
103
  "@expo/vector-icons": "^15.0.2",
101
- "expo-linking": "~8.0.8",
102
- "expo-router": "~6.0.10",
103
- "expo-constants": "~18.0.9",
104
- "expo-system-ui": "~6.0.7",
105
- "expo-web-browser": "~15.0.7",
106
- "react-dom": "19.1.0",
107
- "react-native-web": "^0.21.0",
104
+ "expo-font": "~56.0.5",
105
+ "expo-linking": "~56.0.11",
106
+ "expo-router": "~56.2.6",
107
+ "expo-constants": "~56.0.15",
108
+ "expo-system-ui": "~56.0.5",
109
+ "expo-web-browser": "~56.0.5",
110
+ "react-dom": "19.2.3",
111
+ "react-native-web": "~0.21.0",
108
112
  <% } %>
109
113
 
110
114
  <% if (props.authenticationPackage?.name === "supabase") { %>
111
- "@react-native-async-storage/async-storage": "1.21.0",
115
+ "@react-native-async-storage/async-storage": "2.2.0",
112
116
  "@supabase/supabase-js": "^2.38.4",
113
117
  <% } %>
114
118
 
115
119
  <% if (props.authenticationPackage?.name === "firebase") { %>
116
- "firebase": "^10.5.2",
120
+ "firebase": "^12.13.0",
117
121
  <% } %>
118
122
 
119
123
  <% if (props.internalizationPackage?.name === "i18next") { %>
120
124
  "i18next": "^23.7.20",
121
125
  "react-i18next": "^14.0.1",
122
- "expo-localization": "~14.8.3",
126
+ "expo-localization": "~56.0.6",
123
127
  <% } %>
124
128
  <% if (props.flags?.eas || props.stylingPackage?.name === "nativewindui") { %>
125
- "expo-dev-client": "~6.0.13",
126
- "expo-device": "~8.0.9",
129
+ "expo-dev-client": "~56.0.15",
130
+ "expo-device": "~56.0.4",
127
131
  <% } %>
128
132
 
129
- "react-native-reanimated": "~4.1.1",
130
- "react-native-worklets": "0.5.1",
133
+ "react-native-reanimated": "4.3.1",
134
+ "react-native-worklets": "0.8.3",
131
135
 
132
- "react-native-safe-area-context": "~5.6.0",
133
- "expo": "^54.0.0",
134
- "expo-status-bar": "~3.0.8",
135
- "react": "19.1.0",
136
- "react-native": "0.81.4"
136
+ "react-native-safe-area-context": "~5.7.0",
137
+ "expo": "~56.0.4",
138
+ "expo-splash-screen": "~56.0.10",
139
+ "expo-status-bar": "~56.0.4",
140
+ "react": "19.2.3",
141
+ "react-native": "0.85.3"
137
142
  },
138
143
  "devDependencies": {
139
144
  "@babel/core": "^7.20.0",
140
- "@types/react": "~19.1.10",
145
+ "@types/react": "~19.2.2",
141
146
  "eslint": "^9.25.1",
142
- "eslint-config-expo": "~10.0.0",
147
+ "eslint-config-expo": "~56.0.4",
143
148
  "eslint-config-prettier": "^10.1.2",
144
149
  "prettier": "^3.2.5",
145
150
  <% if (props.stylingPackage?.name === "nativewind" || props.stylingPackage?.name === "nativewindui") { %>
146
151
  "tailwindcss": "^3.4.0",
147
152
  "prettier-plugin-tailwindcss": "^0.5.11",
148
153
  <% } %>
149
- "typescript": "~5.9.2"
154
+ "typescript": "~6.0.3"
150
155
  },
151
156
  <% if (props.navigationPackage?.name !== "expo-router") { %>
152
157
  "main": "node_modules/expo/AppEntry.js",
@@ -3,17 +3,20 @@
3
3
  "compilerOptions": {
4
4
  <% if (props.flags.importAlias) { %>
5
5
  "strict": true,
6
+ <% if (props.navigationPackage?.name !== 'expo-router') { %>
7
+ "ignoreDeprecations": "6.0",
6
8
  "baseUrl": ".",
9
+ <% } %>
7
10
  "paths": {
8
11
  <% if (props.stylingPackage?.name === 'nativewindui') { %>
9
12
  "@/*": [ "./*" ]
10
13
  <% } else { %>
11
14
  <% if (props.navigationPackage?.name === "expo-router" && props.flags.importAlias === true) { %>
12
- "@/*": ["*"]
15
+ "@/*": ["./*"]
13
16
  <% } else if (props.flags.importAlias === true) { %>
14
- "@/*": ["src/*"]
17
+ "@/*": ["./src/*"]
15
18
  <% } else { %>
16
- "<%= props.flags.importAlias %>": ["src/*"]
19
+ "<%= props.flags.importAlias %>": ["./src/*"]
17
20
  <% } %>
18
21
  <% } %>
19
22
  }
@@ -28,9 +31,11 @@
28
31
  ".expo/types/**/*.ts",
29
32
  <% if (props.stylingPackage?.name === 'nativewind' || props.stylingPackage?.name === 'nativewindui') { %>
30
33
  "expo-env.d.ts",
34
+ "css-env.d.ts",
31
35
  "nativewind-env.d.ts"
32
36
  <% } else { %>
33
- "expo-env.d.ts"
37
+ "expo-env.d.ts",
38
+ "css-env.d.ts"
34
39
  <% } %>
35
40
  ]
36
41
  <% } else { %>
@@ -19,9 +19,11 @@ import { Stack } from 'expo-router';
19
19
  <% } %>
20
20
 
21
21
  <% if (props.analyticsPackage?.name === "vexo-analytics") { %>
22
- import { vexo } from 'vexo-analytics';
23
-
24
- vexo(process.env.EXPO_PUBLIC_VEXO_API_KEY);
22
+ const vexoApiKey = process.env.EXPO_PUBLIC_VEXO_API_KEY;
23
+ if (vexoApiKey) {
24
+ const { vexo } = require('vexo-analytics');
25
+ vexo(vexoApiKey);
26
+ }
25
27
  <% } %>
26
28
 
27
29
  export const unstable_settings = {
@@ -12,9 +12,11 @@
12
12
  import { Stack } from "expo-router";
13
13
 
14
14
  <% if (props.analyticsPackage?.name === "vexo-analytics") { %>
15
- import { vexo } from 'vexo-analytics';
16
-
17
- vexo(process.env.EXPO_PUBLIC_VEXO_API_KEY);
15
+ const vexoApiKey = process.env.EXPO_PUBLIC_VEXO_API_KEY;
16
+ if (vexoApiKey) {
17
+ const { vexo } = require('vexo-analytics');
18
+ vexo(vexoApiKey);
19
+ }
18
20
  <% } %>
19
21
 
20
22
  export default function Layout() {
@@ -13,9 +13,11 @@
13
13
  import { Stack } from "expo-router";
14
14
 
15
15
  <% if (props.analyticsPackage?.name === "vexo-analytics") { %>
16
- import { vexo } from 'vexo-analytics';
17
-
18
- vexo(process.env.EXPO_PUBLIC_VEXO_API_KEY);
16
+ const vexoApiKey = process.env.EXPO_PUBLIC_VEXO_API_KEY;
17
+ if (vexoApiKey) {
18
+ const { vexo } = require('vexo-analytics');
19
+ vexo(vexoApiKey);
20
+ }
19
21
  <% } %>
20
22
 
21
23
  export const unstable_settings = {
@@ -1,4 +1,5 @@
1
- import { StyleSheet, SafeAreaView } from 'react-native';
1
+ import { StyleSheet } from 'react-native';
2
+ import { SafeAreaView } from 'react-native-safe-area-context';
2
3
 
3
4
  export const Container = ({ children }: { children: React.ReactNode }) => {
4
5
  return <SafeAreaView style={styles.container}>{children}</SafeAreaView>;