RidePool
It has been extremely difficult to bring about large-scale changes in the area of personal transportation behavior. Our society both relies on and subsidizes solo driving. For many people, driving to work alone is simply too convenient, comfortable, and cost-effective to consider alternative transpo
2025-06-28 16:34:49 - Adil Khan
RidePool
Project Area of Specialization Computer ScienceProject Summary RidePool Summary:It has been extremely difficult to bring about large-scale changes in the area of personal transportation behavior. Our society both relies on and subsidizes solo driving. For many people, driving to work alone is simply too convenient, comfortable, and cost-effective to consider alternative transportation modes. There is no such system in Pakistan, which attempts to crowdsource the personal ride. All similar systems are commercial and working just to fulfill their business needs. We have designed a system which will encounter some vast problems in Pakistan. Car sharing aims at solving this problem by targeting the empty seats in private cars. Employees of the same area or the students going to the same school can carpool. Thus the applications help you in seeing people and journey schedules and make decisions about do you wish to travel with a safe company.
Project Objectives RidePool Objectives:Our objective is to build a platform through which we will be able to
- Shrink overall traffic congestion on the roads
- Save money by sharing the cost of driving one car.
- Reduce peak hour congestion
- Lower single occupied car trips.
- Reduce the number of cars on the road.
This application is designed in such a way that, for a single ride-booking it has to go to multiple API calls.
The application will communicate with the rest API server for storing ride details.
The Google map API is responsible for map rendering and some other services for map integration.
The rest API will take information from the user end to the database, which is being stored against relevant user id’s.
On the registration panel it uses the passport module for authenticating the user, it generates a JSON web token once the user is logged in the system.
This JSON web token will then be attached with a user request to validate the user.
The necessary user information will be stored in the database.
Main User Classes & Characteristics:
- User Registration? : This system enables users to create their accounts in the system, in this system, there are two types of users
- Driver: The registration criteria for drivers are different from the passenger, it includes more security measures than a passenger.
- Passenger: The passenger has to register himself to get the end-user functionality from the app.
- Search For A Ride? : With this feature, users will be able to search for rides. Search will be based on the user's current location.
- Book A Ride? : Once the user is done with the search process, the user can book a ride. The app will take the request of passengers to the driver.
- Cross-Platform Support? : This app will be available for the two most widely used mobile operating systems i.e Android & IOS
Our application is an attempt to make a system that is user friendly and provides an opportunity to share cars.
-
Shrink overall traffic congestion on the roads
-
Lessen air pollution
-
Save money by sharing the cost of driving one car.
-
Improve parking in areas that are experiencing parking congestion
-
Reduce peak hour congestion
-
Lower single occupied car trips.
-
Reduce the number of cars on the road.
Taking a look at the architecture and after having some more in-depth of how the system is designed in terms of communications, models and database let us see how some of these blocks are really implemented in such a way that make all the interactions work. We have analysed the ratio of operating system is being used by the end-users, and we come to a decision of developing a cross platform mobile application which supports both android and ios platform.
Our application is following 3-tier MVC architecture.
Presentation Layer(View):
The presentation tier is the front end layer in the 3-tier system and consists of the user interface. The presentation layer will have all the necessary user interface components.
The presentation layer for the web often build on technologies like HTML, CSS, JAVASCRIPT, but in our case, we will be using Flutter as a front end technology.
Business Logic Layer(Controller):
The controller contains the functional business logic which drives an application’s core capabilities. We will use Rest Api’s in order to communicate our View with the Model. View communicates with the model to pass the information and act accordingly as described actions. We will be using NodeJS to implement our rest API server.
Data Access Layer(Model):
The data tier comprises the database/data storage system and data access layer. Examples of such systems are MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Mongo DB, Firebase, etc. Data is accessed by the application layer via API calls. We will be using MongoDB Database.
Uber and Careem are the competitors for our product because they also provide the
car service. But our product will utilize the full capacity of the car. The users of Uber and
Careem is everyone who has Smartphone. But our product is only for students and employees so that the safety measures will be improved.
| Item Name | Type | No. of Units | Per Unit Cost (in Rs) | Total (in Rs) |
|---|---|---|---|---|
| Total in (Rs) | 77095 | |||
| Maps SDK for Android (Dynamic) | Equipment | 5 | 1124 | 5620 |
| Maps SDK for IOS (Dynamic) | Equipment | 5 | 1124 | 5620 |
| AutoComplete API | Equipment | 5 | 2731 | 13655 |
| Geo location API | Equipment | 5 | 803 | 4015 |
| Current Place API | Equipment | 5 | 4819 | 24095 |
| Direction API (Advanced) | Equipment | 5 | 1606 | 8030 |
| Distance Matrix (Advanced) | Equipment | 5 | 1606 | 8030 |
| Roads API- Route Traveled | Miscellaneous | 5 | 1606 | 8030 |