A fully functioning clone of the famous Uber application.
Hi! This project is a study of how to build a fully functioning clone of the famous Uber application. The app was build from the ground up, fully programmatically without the use of storyboards.
In addition, I used Firebase for backend database, which engineer completely from scratch. Along the way, I learned a lot of kinds of advanced programming techniques, best practices, professional architecture, and more!
My goal was to build production ready applications, that are easily scalable and maintainable.
Below is an overview of the functionality implemented:
- Ability to log in/out and register users.
- Trigger events in application between users in realtime.
- Side menu and user profile
- Displaying nearby drivers on map
- Search and display locations
- Users can accept and cancelling a trip
- Major focus on user experience, using advanced animations and a clean UI.
- Engineering a database from scratch using Firebase.
- Integration Cocoa Pods
- Custom CocoaTouch View Subclasses
- UIView extensions
- UIViewController extensions
- Creating a sliding menu
- Creating a settings page
- Searching for locations
- Displaying locations on map
- Firebase sign in and authentication
- Location Services & Geolocation
- Saving and showing real time driver annotations on the map
- Using Firebase for real time user requests
- MapViews
- IDE: Xcode 11.3.1 (11C504)
- Swift 5.x
- iOS 13.0+
Passenger
Driver
- Download the project.
- Open the terminal and navigate to the directory of project
cd Uber
. - Install Dependencies with Cocoapods
pod install
. - Open the workspace
open Uber.xcworkspace
.