Configure Driver & Restaurant Apps
Our iOS UberEats clone project contains 4 different user flows:
- regular consumer app
 - driver app
 - restaurant app
 - god mode (regular consumer app + admin dashboard)
 
The correct flow is automatically triggered based on the role of the currently logged in user. There are 3 special different roles, for each workflow:
- admin
 - driver
 - vendor
 
If the role is not specified, or has a different value than these 3 special roles, then the default consumer app is triggered automatically.
Once you create a new user in the app, a new entity gets created in the “users” table in Firebase Firestore. Find that entity, and add a “role” field manually, directly in Firestore:
- for admin, simply add a field “role” = “admin” (string)
 - for a driver
 - add a field “role” = “driver” (string)
 - add a field “carName” which is the name/model of the car (e.g. “Tesla Model 3”)
 - add a field name “carNumber” which is the license plate of the car
 - add a field name “carPictureURL” which is an URL to a photo of the car
 

- for restaurant manager
 - add a field “role” = “vendor”
 - add a field vendorID, which is the ID of the restaurant that this user manages (the vendorID value must match the ID of a vendor from the “vendors” db table)
 
