Car Rental App


Setup OIDC Authentication with Google Provider

To use Google Sign In, you will need to create a project on the Google Developer Console and create an OAuth 2.0 client ID.
  1. 1.
    Get an app set up on the Google Developer Console
  2. 2.
    Go to the Credentials Page Create an app for your project if you haven't already.
  3. 3.
    Once that's done, click "Create Credentials" and then "OAuth client ID." You will be prompted to set the product name on the consent screen, go ahead and do that.
After updating .env file, you have trigger code rebuild by modifying this file /screens/SocialLogin/behaviors.js. Just add a new line or any change and save it then relaunch the app.

Connect to your Expo account

When using Expo services like AuthSession, you should use expo start and login to your account becausereact-native-scripts start uses a logged-out, anonymous developer account that's why you will have a warning message You are not currently signed in you Expo on your development machine.

Available scripts

This app include all necessary scripts to launch the commons tasks:
"scripts": {
"start": "react-native-scripts start",
"eject": "react-native-scripts eject",
"android": "react-native-scripts android",
"ios": "react-native-scripts ios",
"test": "jest && eslint .",
"test:watch": "jest --watch",
"test:updateSnapshot": "jest --updateSnapshot",
"test:coverage": "jest --coverage",
"test:coverage:watch": "jest --coverage --watch",
"lint:fix": "eslint --fix src",
"precommit": "yarn test",
"postinstall": "rndebugger-open",
"server": "json-server --watch api/db.json --routes api/apiRoutes.json --port 3004"


Launching tests

Launch this command to execute tests:
$ yarn test
$ npm run test
Tests are also launched before each push using a Git hook
To generate test coverage reports, use the command:
$ yarn test:coverage
$ npm run test:coverage
To update Jest Snapshots , use the command:
$ yarn test:updateSnapshot
$ npm run test:updateSnapshot