docs: function eject() {
  
    const doesIOSExist = fs.existsSync(path.resolve('ios'));
    const doesAndroidExist = fs.existsSync(path.resolve('android'));
    if (doesIOSExist && doesAndroidExist) {
      console.error(
        'Both the iOS and Android folders already exist! Please delete `ios` and/or `android` ' +
        'before ejecting.'
      );
      process.exit(1);
    }
  
    let appConfig = null;
    try {
      appConfig = require(path.resolve('app.json'));
    } catch(e) {
      console.error(
        `Eject requires an \`app.json\` config file to be located at ` +
        `${path.resolve('app.json')}, and it must at least specify a \`name\` for the project ` +
        `name, and a \`displayName\` for the app's home screen label.`
      );
      process.exit(1);
    }
  
    const appName = appConfig.name;
    if (!appName) {
      console.error(
        `App \`name\` must be defined in the \`app.json\` config file to define the project name. `+
        `It must not contain any spaces or dashes.`
      );
      process.exit(1);
    }
    const displayName = appConfig.displayName;
    if (!displayName) {
      console.error(
        `App \`displayName\` must be defined in the \`app.json\` config file, to define the label ` +
        `of the app on the home screen.`
      );
      process.exit(1);
    }
  
    const templateOptions = { displayName };
  
    if (!doesIOSExist) {
      console.log('Generating the iOS folder.');
      copyProjectTemplateAndReplace(
        path.resolve('node_modules', 'react-native', 'local-cli', 'templates', 'HelloWorld', 'ios'),
        path.resolve('ios'),
        appName,
        templateOptions
      );
    }
  
    if (!doesAndroidExist) {
      console.log('Generating the Android folder.');
      copyProjectTemplateAndReplace(
        path.resolve('node_modules', 'react-native', 'local-cli', 'templates', 'HelloWorld', 'android'),
        path.resolve('android'),
        appName,
        templateOptions
      );
    }
  
  }