diff --git a/packages/cli/src/commands/init/templateName.js b/packages/cli/src/commands/init/templateName.js index d2b8b7e98..be71e5dad 100644 --- a/packages/cli/src/commands/init/templateName.js +++ b/packages/cli/src/commands/init/templateName.js @@ -76,10 +76,20 @@ async function tryTemplateShorthand(templateName: string) { return templateName; } try { - const reactNativeTemplatePackage = `react-native-template-${templateName}`; - const response = await fetch( - `https://registry.yarnpkg.com/${reactNativeTemplatePackage}/latest`, - ); + const nameTagArray = templateName.split('@'); + const name = nameTagArray[0]; + const tag = nameTagArray[1]; + const reactNativeTemplatePackage = `react-native-template-${name}`; + var response; + if (tag) { + response = await fetch( + `https://registry.yarnpkg.com/${reactNativeTemplatePackage}/${tag}`, + ); + } else { + response = await fetch( + `https://registry.yarnpkg.com/${reactNativeTemplatePackage}/latest`, + ); + } if (JSON.parse(response).name) { return reactNativeTemplatePackage;