Booking appointments through the phone can be a chore to do sometimes. Verbal communication is less clear, concise and easily mistranslated, and it can be a hassle to wait for reception to be available, callbacks, and picking the best available time. In this day and age, we live in a world where talking is often not required to get things done. With just a few clicks on a screen, we can get transportation, food or things delivered right to our doorsteps. So why not make booking appointments just as easy? Our project is inspired based on our desires to make booking our appointments quicker, easier, and eliminate any miscommunication with just a touch of a button.

What it does

You don't have to call up your dental office or your car repair centre. Just open Book Better, and in 2 clicks, you have got yourself an appointment scheduled!

How we built it

We used HTML, Bootstrap and CSS for the front-end and used JavaScript, Firebase, jQuery, MomentsJS and Full Calendar API to implement back-end. In regards to Firebase, we specifically used it for authentication (i.e. registering users), cloud database, and hosting.

Challenges we ran into

  • Asynchronous programming with JavaScript despite JavaScript being single-threaded!
  • It took us a long time to read through and fully understand the Full Calendar API and integrate it with our app
  • Designing a complex database structure: it's our first time dealing with so many different types of data to store. We had to design a data structure that is efficient for lookups and reduce redundancy.
  • Trying to host it using

Accomplishments that we're proud of

  • Fully implemented a working minimum viable product. We have implemented all the core functions of the app that we had planned
  • To have successfully used Firebase as our cloud database platform since having a good cloud database structure can be scalable for the future
  • Visually pleasing front-end with cute logo. We are happy with the overall look and minimalistic design of the app. Its clean and intuitive UI makes this app easy-to-use for everyone.
  • Responsive web design allow accessibility in any type of device

What we learned

  • Understanding how Firebase works (i.e. how they store data, API): we are all very new to Firebase so implementing our app with Firebase was a real challenge to us
  • JavaScript, learning more about its JavaScript-ness. Having built mobile apps in the past, transitioning into web app has been quite the challenge, especially with a language (i.e., JavaScript) that works differently than the one we're used to (Java)
  • Constructing a good database structure for the core functions of the app
  • Allowing the authorization of two types of users that leads to their respective interface

What's next for BookBetter

  • Mobile app
  • More flexibility and powerful options in booking (i.e. change bookings, share appointments with someone, customize alerts)
  • Recruiting organizations to register with BookBetter to digitize their booking process
  • Promoting a sustainable relationship between businesses and their clients
  • Colour coding events of different categories

Built With

Share this project: