Overview
GoFr is an app that is used for goods delivery. Users can add the details of a store to pick-up goods. A pick-up order will automatically be sent to nearby drivers who are available at that time. The driver will accept or reject according to their available time. Once a customer placed an order to any driver, he/she receives the request, and he/she can accept or reject the order in 10 minutes. If a driver rejects that request or does not take any action, the order will automatically find a nearby new driver. Users can see all the status of their delivery requests and track a driver location during the delivery time. Users can pay using cards, and drivers get paid on their bank account. GoFr is the unique concept to create an online marketplace and provide faster services to the customers and the best platform for drivers who can get extra money with this app.
Client Requirements
Our client wanted to make an online marketplace in the USA where people can order goods from anywhere and get the order delivered to their doorstep. Another primary purpose of a client was to allow experienced drivers to work with GoFr as a freelance driver to deliver Goods, ultimately creating new opportunities for free drivers to earn extra money. To fulfill this requirement, the client contact Hyperlink InfoSystem to develop an app for only iOS platforms. Hyperlink InfoSystem has developed the "GoFr" app for customers that allows customers to order goods from anywhere without facing any difficulties and the "GoFr Driver" app.
Features
Customers Feature
Log in/Sign up
- Sign up with necessary details like name, email, password, and phone number verification.
- Users can log in with email and password.
Home
- Users need to fill up the detail for stores, address, items, and then book the nearest driver from a store.
- Users will get fare estimation and pay amounts with debit or credit cards.
My Orders
- When the driver accepts the order, then the customer able to see the driver details.
- The customer's order will be placed in my order listing.
Rate & Review
- Users can rate and review to a driver and give feedback after the delivery is completed.
My Profile
- Users can update profiles, change a password and Payment method of the application.
Track Orders
- Users can track current running orders.
Notification
- When users order delivery started
- When any driver cancels any order
- When order delivered by a driver
- When driver accept your order
Communicate
- Users can call to the particular driver for further information about their delivery.
Driver Feature
Login / Sign up
- Sign up with necessary details like name, email, and password.
- Drivers need to enter bank details during sign up.
- Drivers can log in with email and password after being approved by the admin.
Home
- Drivers can accept or reject the request placed by a customer.
- Users can track drivers when he/she accept that order, drivers can call users for any location-related query.
- Drivers can view all past orders list.
Profile
- Drivers can update profile, change a password.
Notification
- When the driver starts delivery
- When driver canceled any order
- When the driver delivered any order
Admin Panel Features
Users Management
- View and edit and delete users details
- Active/Inactive users
Drivers Management
- View and edit and delete driver's details
- Active/Inactive drivers
Orders
- View, search, generate excel sheet of every order
Payment
- View details of payment
Report
- Generate all reports based on order status.
- Generate reports based on user, driver, and store.
Challenges
Real-time Location of Drivers on Map
In the GoFr app, a customer should view the drivers with real-time location tracking as they move on the road. This functionality requires frequent updates of the location of the driver. Implementing this feature was a little bit tough task for our developers. After research and hard work, our developers have resolved this issue using a custom location manager class to update the current location on a small amount of time interval.
Cost Calculation by Distance
Whenever users add their delivery address, the system automatically creates & sends fare calculation to the user. But, in many cases, one destination may have different routes. To calculate fare estimation based on the selected delivery route and time was a bit challenging. To solve this challenge, our developers used the Google matrix query for estimating the fair distance formula.
Technologies
IOS
iOS OS Support: iOS 11 and above
Development: Swift using Xcode
iOS Supported Devices: iPhone 5S, iPhone 6, iPhone 6S, iPhone 6 Plus, iPhone 6 Plus S, iPhone 7, iPhone 7 Plus, iPhone 8, iPhone 8 Plus.
Admin panel
CMS<:/strong> PHP, MySQL
API: REST API in JSON format
Supported Browser: Mozilla Firefox: Min 40.0 to Max 46.0 version Google Chrome: Min 44.0 to Max 51.0 version Internet Explorer: Min 10.0 to Max 11.0 version Apple Safari: Min 8.0 to Max 10.0 version