Sitemap
Kim Kevin Baranyizigiye

Kim Kevin Baranyizigiye

A Softa Engineer

Building Your Own Bus Booking App [PART 2]

3 min readMar 14, 2024

--

Few months later I am starting to write again on this subject , I will do my best on finishing this set of stories about building a bus booking app.

So what’s the story so far ?

I started building the APIs for the booking engine and the schedule management service and this stage is still in the draft phase if I may say , I will provided the list later in this article.

I also started working in a first version(or first commit hehe) of the android app. I will share some screenshot and the reason of some of my designs that will impact the architecture of the system.

API List

The APIs I built so far are a mix of apis that allows to setup the bus details with its routes and the booking service.

  • Create Owner API : This api allows the creation of the owner of the bus.
  • Add bus API : This one allows the owner to add a bus to their fleet.
  • Create Seat API : This one is more like an internal api , it allows the creation of the seats of each bus ( seat number , seat row etc.).
  • Add Travel Route API : Allows the bus owner to add a new travel route ( for example Paris to Amsterdam).
  • Add Travel Route Segment API: Allow to create segment for each travel route (For example from Paris to Amsterdam , one has to go through Brussels stop , so the real travel route is Paris →Brussels → Amsterdam).

So when a user search for a bus from Paris to Amsterdam Bus A will appear and if he/she/they search for a bus from Paris to Brussels Bus A will still appear. I explained in details this case in my last article.

  • Add Schedule API : Create the schedule on when a particular bus will travel on a given route. For example bus A will go from Paris to Amsterdam on 14/03/2024.
  • Search Seats API : Allows to return the available seats for a given route
  • Book Seats API : Self-Explanatory

User Mobile App

As stated I built a real slapped together screens for the this first version but I still think I did good. Maybe I should take some lesson in UI/UX designs :).

Homepage

The homepage host the search forms. Also peep the bottom navigation bottom menu

Press enter or click to view image in full size
Homepage Screen

Availabe Travels & Seats

Press enter or click to view image in full size

This one shows the results based on the search dates provided by the user. It doesn’t show the number of seats available yet.

Get Kim Kevin Baranyizigiye’s stories in your inbox

Join Medium for free to get updates from this writer.

But you can scroll through in order to find if cheaper or more convenient routes are available without having to go back to the homepage for a new search.

Complete Order

Press enter or click to view image in full size

Here the user will add their details( name etc), they can also :

  • Choose the seats they want for a fee (Capitalism yeah)
  • Add more luggages for the travel
  • Opt in for an insurance or sms alert
  • Choose which payment method available to them

Ticket Confirmation

After the booking is confirmed , the next screen will display the ticket details as well as the QR Code that contains the booking details.

Press enter or click to view image in full size

That’s all for now , in the next iteration , I will implement the API in the mobile app. This will force me to remove all the placeholders or constant values I put in my mobile app.

See you next time

--

--