A-Cobble / tinder_clone

Tinder_clone is a React Native project that utilizes Google authentication and Google Firebase.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tinder_Clone

Tinder_Clone is an Expo React Native project based off the popular dating app. Features include Google authentication, styling using Tailwind CSS, swipeable cards, react navigation to allow for multiple pages, a matching algorithm, and upon successful matching between two users, one to one real time messaging which is powered by Firebase's Firestore database.

Technologies


Getting Started

This project is not designed for production use. Some refactoring will be required if used for production.

First, install and log into the Expo CLI:

npx expo register

# or

npx expo login

Then, install and log into the Firebase CLI:

curl -sL https://firebase.tools | bash
firebase login

Next, install the dependencies:

npm install
# or
yarn add


Environmental Variables and Sensored Information

Some inormation will be unique to the user for this project and is not to be shared publicly such as Android Client IDs, IOS Client IDs, Expo Client IDs, as well as the google-services.json file, and the GoogleService-Info.plist file.


Create the .env file in root directory of your project.


I have included a template (.env.template) to help you get started.


To allow the Google Authentication to work the google-services.json and GoogleService-Info.plist files are requried to be added to the root directory. These can be obtained from Google Cloud -> Credentials once authentication has been set up. Learn more about authentication with expo-auth-session here: https://docs.expo.dev/versions/latest/sdk/auth-session/


Acknowledgments

This project was inspired by Sonny Sangha's Tinder clone. If you have any questions check out his YouTube video here: https://www.youtube.com/watch?v=AkEnidfZnCU.

(The google authentication used in the YouTube video has since been depricated. I used expo-auth-session instead.)

About

Tinder_clone is a React Native project that utilizes Google authentication and Google Firebase.


Languages

Language:JavaScript 100.0%