Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
57233a492b | ||
|
|
b8f4b89aca | ||
|
|
80e970bda8 | ||
|
|
dc432eea2d | ||
|
|
8c5248b2b3 | ||
|
|
11fa0420ed |
No files matched your search
+3
-1
@@ -1,7 +1,9 @@
|
||||
language: node_js
|
||||
node_js:
|
||||
- "node"
|
||||
install: true
|
||||
cache:
|
||||
directories:
|
||||
- "node_modules"
|
||||
deploy:
|
||||
on:
|
||||
tags: true
|
||||
|
||||
@@ -21,7 +21,7 @@ const instructions = Platform.select({
|
||||
'Shake or press menu button for dev menu',
|
||||
});
|
||||
|
||||
interface Props {};
|
||||
interface Props {}
|
||||
export default class App extends Component<Props> {
|
||||
render() {
|
||||
return (
|
||||
|
||||
@@ -43,6 +43,10 @@ The React Native CLI supports automatic installation of production dependencies
|
||||
|
||||
The React Native CLI will do everything just as without a template and afterwards overwrite the files with the ones from this template. This means you don't have to worry about incompatibility issues with later React Native upgrades.
|
||||
|
||||
### Does debugging work too?
|
||||
|
||||
Yes it does. Some users reported that they got an error about relative paths when they tried to debug inside Visual Studio Code. In this case check out the [fix by Mo Mac](https://medium.com/@nocnoc/great-work-f0b5ef365ca6).
|
||||
|
||||
## :globe_with_meridians: Links
|
||||
|
||||
- ["Using React Native with TypeScript just became simple" on Medium](https://medium.com/@emin93/react-native-typescript-b965059109d3)
|
||||
|
||||
Generated
+1899
File diff suppressed because it is too large.
Load diff
+6
-2
@@ -3,7 +3,8 @@
|
||||
"version": "0.0.1",
|
||||
"description": "Clean and minimalist React Native template for a quick start with TypeScript.",
|
||||
"scripts": {
|
||||
"prepublishOnly": "npm --no-git-tag-version version from-git"
|
||||
"test": "standard setup.js",
|
||||
"prepublishOnly": "git reset --hard && npm --no-git-tag-version version from-git"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@@ -21,5 +22,8 @@
|
||||
"bugs": {
|
||||
"url": "https://github.com/emin93/react-native-template-typescript/issues"
|
||||
},
|
||||
"homepage": "https://github.com/emin93/react-native-template-typescript#readme"
|
||||
"homepage": "https://github.com/emin93/react-native-template-typescript#readme",
|
||||
"devDependencies": {
|
||||
"standard": "11.0.1"
|
||||
}
|
||||
}
|
||||
+2
-2
@@ -4,5 +4,5 @@ module.exports = {
|
||||
},
|
||||
getSourceExts() {
|
||||
return ['ts', 'tsx'];
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
@@ -1,56 +1,56 @@
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const { execSync } = require('child_process');
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const {execSync} = require('child_process')
|
||||
|
||||
const packageJson = require('./package.json');
|
||||
const jestConfig = require('./jest.json');
|
||||
const devDependencies = require('./devDependencies.json');
|
||||
const packageJson = require('./package.json')
|
||||
const jestConfig = require('./jest.json')
|
||||
const devDependencies = require('./devDependencies.json')
|
||||
|
||||
const deleteFile = (fileName) => {
|
||||
const filePath = path.join(process.cwd(), fileName);
|
||||
const filePath = path.join(process.cwd(), fileName)
|
||||
|
||||
if (!fs.existsSync(filePath)) {
|
||||
return;
|
||||
return
|
||||
}
|
||||
|
||||
fs.unlinkSync(filePath);
|
||||
};
|
||||
const writeFile = (fileName, data) => fs.writeFileSync(path.join(process.cwd(), fileName), data);
|
||||
fs.unlinkSync(filePath)
|
||||
}
|
||||
const writeFile = (fileName, data) => fs.writeFileSync(path.join(process.cwd(), fileName), data)
|
||||
const isYarnAvailable = () => {
|
||||
try {
|
||||
execSync('yarn --version', { stdio: 'ignore' });
|
||||
return true;
|
||||
execSync('yarn --version', {stdio: 'ignore'})
|
||||
return true
|
||||
} catch (exc) {
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
const packageManager = isYarnAvailable() ? 'yarn' : 'npm';
|
||||
const execOptions = { stdio: 'inherit' };
|
||||
const packageManager = isYarnAvailable() ? 'yarn' : 'npm'
|
||||
const execOptions = {stdio: 'inherit'}
|
||||
|
||||
console.log('🔄 Please wait...\n');
|
||||
console.log('🔄 Please wait...\n')
|
||||
|
||||
packageJson.scripts.start = `${packageJson.scripts.start} --config ../../../../rn-cli.config.js`;
|
||||
packageJson.jest = Object.assign(packageJson.jest, jestConfig);
|
||||
writeFile('package.json', JSON.stringify(packageJson, null, 2));
|
||||
packageJson.scripts.start = `${packageJson.scripts.start} --config ../../../../rn-cli.config.js`
|
||||
packageJson.jest = Object.assign(packageJson.jest, jestConfig)
|
||||
writeFile('package.json', JSON.stringify(packageJson, null, 2))
|
||||
|
||||
console.log(`📦 Installing dependencies with ${packageManager}...\n`);
|
||||
console.log(`📦 Installing dependencies with ${packageManager}...\n`)
|
||||
|
||||
switch (packageManager) {
|
||||
case 'yarn':
|
||||
execSync(`yarn add ${devDependencies.join(' ')} --dev --exact`, execOptions);
|
||||
break;
|
||||
execSync(`yarn add ${devDependencies.join(' ')} --dev --exact`, execOptions)
|
||||
break
|
||||
default:
|
||||
execSync(`npm i ${devDependencies.join(' ')} --save-dev --save-exact`, execOptions);
|
||||
execSync(`npm i ${devDependencies.join(' ')} --save-dev --save-exact`, execOptions)
|
||||
}
|
||||
|
||||
deleteFile('App.js');
|
||||
deleteFile('__tests__/App.js');
|
||||
deleteFile('.flowconfig');
|
||||
deleteFile('devDependencies.json');
|
||||
deleteFile('jest.json');
|
||||
deleteFile('README.md');
|
||||
deleteFile('LICENSE');
|
||||
deleteFile('setup.js');
|
||||
deleteFile('App.js')
|
||||
deleteFile('__tests__/App.js')
|
||||
deleteFile('.flowconfig')
|
||||
deleteFile('devDependencies.json')
|
||||
deleteFile('jest.json')
|
||||
deleteFile('README.md')
|
||||
deleteFile('LICENSE')
|
||||
deleteFile('setup.js')
|
||||
|
||||
console.log(`\n✅ Setup completed! You can now start with: ${packageManager} start\n`);
|
||||
console.log(`\n✅ Setup completed! You can now start with: ${packageManager} start\n`)
|
||||
Reference in new issue
Block a user