@lefrankleal/react-native-template
v0.72.17
Published
React Native Template ready to go
Downloads
23
Maintainers
Readme
React Netive Template ready to code!
This template includes multiple plugins that allow you to code faster, it's ready to start coding.
:space_invader: React Native Template TypeScript + ESLint + Prettier
:arrow_forward: Start using this template:
npx react-native init MyApp --template @lefrankleal/react-native-template
or
npx react-native init MyApp --template https://github.com/lefrankleal/react-native-template.git
Linting your code
There are some commands that you can use to lint your JavaScript code:
- Use this command to fix everything that is wrong according the code standar
yarn lint:fix
- Then you can use to check everything is ok with the code standar requirements
yarn lint
:star: Pre-instaled plugins
This template is not minimalistic, it's armored and ready to start coding with the most profitable plugins including code linting hard type checking.
{
...
"dependencies": {
"@react-native-material/core": "^1.3.7",
"@react-navigation/bottom-tabs": "^6.5.2",
"@react-navigation/drawer": "^6.5.6",
"@react-navigation/native": "^6.1.1",
"@tanstack/react-query": "^4.20.9",
"axios": "^1.2.2",
"lodash": "^4.17.21",
"react": "18.2.0",
"react-hook-form": "^7.41.5",
"react-native": "0.72.3",
"react-native-safe-area-context": "^4.4.1",
"react-native-screens": "^3.18.2",
"react-native-vector-icons": "^9.2.0",
"yup": "^0.32.11"
},
"devDependencies": {
"@babel/core": "^7.20.0",
"@babel/eslint-parser": "^7.22.9",
"@babel/preset-env": "^7.20.0",
"@babel/preset-react": "^7.22.5",
"@babel/preset-typescript": "^7.22.5",
"@babel/runtime": "^7.20.0",
"@jest/globals": "^29.6.1",
"@react-native-community/eslint-config": "3.2.0",
"@react-native/eslint-config": "^0.72.2",
"@react-native/metro-config": "^0.72.9",
"@tsconfig/react-native": "^3.0.0",
"@types/axios": "^0.14.0",
"@types/jest": "^26.0.23",
"@types/lodash": "^4.14.191",
"@types/node": "^18.11.18",
"@types/react": "^18.0.27",
"@types/react-native": "^0.72.2",
"@types/react-test-renderer": "^18.0.0",
"@typescript-eslint/eslint-plugin": "^5.61.0",
"@typescript-eslint/parser": "6.1.0",
"babel-eslint": "^10.1.0",
"babel-jest": "^29.2.1",
"babel-plugin-module-resolver": "^4.1.0",
"commitizen": "^4.3.0",
"eslint": "^8.45.0",
"eslint-config-prettier": "8.8.0",
"eslint-formatter-codeframe": "^7.32.1",
"eslint-plugin-flowtype": "^8.0.3",
"eslint-plugin-functional": "^4.4.1",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-jsx-a11y": "^6.7.1",
"eslint-plugin-prefer-arrow": "^1.2.3",
"eslint-plugin-prettier": "^5.0.0",
"eslint-plugin-react": "^7.32.1",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-native": "^4.0.0",
"jest": "^29.2.1",
"jetifier": "^2.0.0",
"metro-react-native-babel-preset": "0.76.7",
"prettier": "^3.0.0",
"react-test-renderer": "18.2.0",
"typescript": "^4.9.4"
}
...
}
Aliases
If you want to add more aliases just add it to tsconfig.paths.json
and babel.config.js
, :warning: both are required:warning:.
/* Current paths aliases */
"paths": {
"@assets/*": ["assets/*"],
"@components/*": ["components/*"],
"@config/*": ["config/*"],
"@context/*": ["context/*"],
"@screens/*": ["screens/*"],
"@services/*": ["services/*"],
"@utils/*": ["utils/*"]
}
Aliases usage:
/* This component should be exported from index.ts file inside the folder src/components */
import { ExampleComponent } from "@components"
/* Or call the component directly from file */
import { ExampleComponent } from "@components/example-component"
:computer: Contributing
Contributions are very welcome. Please check out the contributing document.
:bookmark: License
This project is MIT licensed.