projects

NextBus SG

A simple yet powerful app for bus timings

I was never happy with the bus apps I used. All I needed was a list of bus timings in a simple interface. Since none of the exisiting solutions filled my needs, I decided to work on my own.

All other solutions required too many interactions, and it always used to take me a minute or more to find what I was looking for. It was quite frustrating to me that there was nothing that could get you the information you want at your fingertips.

Problems solved by NextBus SG

My app provides the key functionalities of a public transport app in a simplified yet powerful manner. While it looks simple, it comes with features no other bus app currently has.

View timings and crowd of the next three buses

Each bus timing is color-coded based on the crowd.

Rename bus stops

Sometimes bus stop names don’t make much sense to us humans. For instance, what’s the difference between Bedok Station Exit A and Bedok Station Exit B? We don’t have to find out, because they can be changed to Opposite Bedok Mall and Bedok Mall.

Darker MRT map

While all apps have the MRT map, none have a dark map.

Minimalist, clutter-free interface

NextBus SG shows you only the information you need – nothing more, nothing less.

Technologies used

I chose Flutter for its ease of use, great developer experience, and platform-agnostic development. I was able to release the app for iOS and Android rapidly.

DataMall and Gov.SG provide free APIs for public transport, bus timings, and other related data in Singapore.

The app is easily extensible to other countries because of the mini-backend it works off of.

Next steps

I’m currently awaiting more feedback in order to improve the app further.

Achievements

  • My code got great reviews on a Flutter YouTube channel
    • Received extremely positive comments for the UI design and backend