gDoctor is an open source mobile app built with React Native and OsmiCSX for learning purpose.
- Xcode or Android Studio installed and exported on your ~/.bash_profile or similar
- JDK 1.8
- Node >= 12.*
- react-native-cli
open terminal and change directory to your desired folder, then:
$ git clone git@github.com:libscode/gDoctor.git YourAppName
$ cd YourAppName
$ yarn install
$ cd ios && pod install
$ npx react-native run-android
$ npx react-native run-ios
The code is available at GitHub under the [MIT license][license-url].
To Lint on Commit
This is implemented using husky. There is no additional setup needed.
Bypass Lint
If you have to bypass lint for a special commit that you will come back and clean (pushing something to a branch etc.) then you can bypass git hooks with adding --no-verify
to your commit command.
Understanding Linting Errors
The linting rules are from JS Standard and React-Standard. Regular JS errors can be found with descriptions here, while React errors and descriptions can be found here.
This project uses react-native-config to expose config variables to your javascript code in React Native. You can store API keys
and other sensitive information in a .env
file:
API_URL=https://myapi.com
GOOGLE_MAPS_API_KEY=abcdefgh
and access them from React Native like so:
import Secrets from 'react-native-config'
Secrets.API_URL // 'https://myapi.com'
Secrets.GOOGLE_MAPS_API_KEY // 'abcdefgh'
The .env
file is ignored by git keeping those secrets out of your repo.
- Copy .env.example to .env
- Add your config variables
- Follow instructions at https://github.com/luggit/react-native-config#setup
- Done!
Suggestions and contributions are welcome via Pull Requests.
Rully Ardiansyah 💻 📖 💬 👀 💡 |
Gilang Segara Bening 🎨 💡 |
---|