Uber Clone with React Native | Live Tracking + Background Location using Sockets
Description
This is a full-stack Uber clone app built with React Native. It includes essential features like live map integration, real-time routing, location search, and nearby places using real data via REST APIs.
The project comes with a complete backend folder and Swagger API documentation for easy testing. It also supports dark mode, RTL layouts, and multiple languages. After purchase, youโll get free lifetime updates and access to the latest version whenever new features are added.
Documentation
๐ Uber Clone - React Native App
A fully functional Uber-like ride booking app built with React Native. This app supports multilingual features (LTR/RTL), light/dark themes, and real-time ride tracking with Google Maps. Built on a scalable boilerplate foundation (rn_boilerplate
).
๐ How to Run
Follow these steps to set up and run the app:
๐๏ธ Step 1: Unzip the Project
Unzip the downloaded folder.
๐ Step 2: Navigate to the Project Directory
cd uberclone
๐ฆ Step 3: Install Dependencies
npm install
โถ๏ธ Step 4: Start Metro Bundler
npm start
๐ฑ Step 5: Run on Android
npm run android
๐ Step 6: Run on iOS
npm run ios
๐ Google Maps API Setup
To enable maps:
โ 1. Add your Google Maps API Key
Edit the following file:
// src/config/keys.ts
export const GOOGLE_MAP_API_KEY = 'PASTE_YOUR_API_KEY_HERE';
โ 2. Android Setup
Add this in android/app/src/main/AndroidManifest.xml
:
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="PASTE_YOUR_API_KEY_HERE"/>
โ 3. iOS Setup
In ios/rn_boilerplate/AppDelegate.swift
, inside application(...)
method:
GMSServices.provideAPIKey("PASTE_YOUR_API_KEY_HERE")
๐ง Backend Setup
๐ Step 1: Navigate to Backend Folder
cd backend
๐ฆ Step 2: Install Backend Dependencies
npm install
โ๏ธ Step 3: Start the Backend Server
npm run dev
๐ Important
Make sure MongoDB is installed and running locally before starting the backend server.
๐ Download MongoDB Community Edition
๐ ๏ธ Features
- ๐ Light/Dark Mode toggle
- ๐ Language support (English โ Arabic)
- ๐ Google Maps live tracking
- ๐งพ Ride summary & trip history
- ๐ค User profile with logout
- ๐ Vehicle and driver details
- ๐ Navigation using React Navigation
- ๐ก Real-time communication via Socket.io
- ๐ฆ Background location tracking using react native background geolocation
๐ฆ Tech Stack
- React Native
- React Navigation
- Redux Toolkit
- i18next (localization)
- Google Maps SDK
- TypeScript
- Node.js
- Express.js
- Swagger (API documentation)
๐ Folder Structure (Modular)
uberclone/
โโโ App.tsx # App entry point
โโโ index.js # Registers root component
โโโ app.json # App configuration
โโโ package.json # Dependencies & scripts
โโโ babel.config.js # Babel config
โโโ metro.config.js # Metro bundler config
โโโ tsconfig.json # TypeScript config
โโโ yarn.lock # Yarn lockfile
โโโ .eslintrc.js # ESLint config
โโโ .prettierrc.js # Prettier config
โโโ .gitignore # Git ignored files
โโโ /android # Android native files
โโโ /ios # iOS native files
โโโ /assets # Global static assets
โโโ /backend # Backend (Node.js + TypeScript)
โ โโโ /src
โ โ โโโ /api # API routes
โ โ โโโ /config # DB and app config
โ โ โโโ /socket # WebSocket (Socket.io) logic
โ โ โโโ /types # TypeScript interfaces/types
โ โ โโโ index.ts # Main server entry point
โ โโโ .env # Environment variables
โ โโโ package.json # Backend dependencies & scripts
โ โโโ package-lock.json
โ โโโ tsconfig.json # TypeScript config
โโโ /src # Main source code
โ โโโ /assets # Fonts, Images
โ โโโ /components # Reusable UI components
โ โโโ /config # App-level config files
โ โโโ /constants # App-wide constants
โ โโโ /context # React contexts
โ โโโ /hooks # Custom hooks
โ โโโ /lang # Localization (en.json, ar.json)
โ โโโ /models # Data models/interfaces
โ โโโ /navigation # Stack & tab navigators
โ โโโ /redux # Redux store, actions, reducers
โ โโโ /screens # UI screens (Home, Profile, etc.)
โ โโโ /styles # Global styles/themes
โ โโโ /typings # TypeScript types
โ โโโ /utils # Utility functions
๐ License
What our users say
No reviews yet. Be the first to review this module!
Module Information
Live Preview
View Live DemoTech Stack
Technologies used in this module