From 83643a78b73dee5610be6ad9837fb72e9b944cb7 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Wed, 28 Aug 2024 15:53:21 +0200 Subject: Initial commit Generated by create-expo-app 3.0.0. --- scripts/reset-project.js | 73 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100755 scripts/reset-project.js (limited to 'scripts/reset-project.js') diff --git a/scripts/reset-project.js b/scripts/reset-project.js new file mode 100755 index 0000000..4512e16 --- /dev/null +++ b/scripts/reset-project.js @@ -0,0 +1,73 @@ +#!/usr/bin/env node + +/** + * This script is used to reset the project to a blank state. + * It moves the /app directory to /app-example and creates a new /app directory with an index.tsx and _layout.tsx file. + * You can remove the `reset-project` script from package.json and safely delete this file after running it. + */ + +const fs = require('fs'); +const path = require('path'); + +const root = process.cwd(); +const oldDirPath = path.join(root, 'app'); +const newDirPath = path.join(root, 'app-example'); +const newAppDirPath = path.join(root, 'app'); + +const indexContent = `import { Text, View } from "react-native"; + +export default function Index() { + return ( + + Edit app/index.tsx to edit this screen. + + ); +} +`; + +const layoutContent = `import { Stack } from "expo-router"; + +export default function RootLayout() { + return ( + + + + ); +} +`; + +fs.rename(oldDirPath, newDirPath, (error) => { + if (error) { + return console.error(`Error renaming directory: ${error}`); + } + console.log('/app moved to /app-example.'); + + fs.mkdir(newAppDirPath, { recursive: true }, (error) => { + if (error) { + return console.error(`Error creating new app directory: ${error}`); + } + console.log('New /app directory created.'); + + const indexPath = path.join(newAppDirPath, 'index.tsx'); + fs.writeFile(indexPath, indexContent, (error) => { + if (error) { + return console.error(`Error creating index.tsx: ${error}`); + } + console.log('app/index.tsx created.'); + + const layoutPath = path.join(newAppDirPath, '_layout.tsx'); + fs.writeFile(layoutPath, layoutContent, (error) => { + if (error) { + return console.error(`Error creating _layout.tsx: ${error}`); + } + console.log('app/_layout.tsx created.'); + }); + }); + }); +}); -- cgit v1.2.3-18-g5258