Mahjong web app

anthony huggins
2 min readJun 29, 2020

My project allows people to play Mahjong together over the internet so that they can play even when they are not physically together. I was the only one that worked on this project and i completed it in a 6 week time span. This project was created for anyone how wants to be able to play Mahjong remotely. The thing i focused on most was creating a present and intuitive user interface.

I come from a Chinese family and one of our favorite things to do together is play Mahjong. Unfortunately because of the Corona Virus we were no longer able to meet in person to play. This is what inspired me to create a way for Mahjong to be played over the internet. I am glad i chose to create this and my family now has a way to still play together despite the pandemic.

To create this project I used two main technologies, Flutter and Firebase. I used Flutter Web to create the UI of the game. I chose flutter because i was already familiar with it and enjoy working with it. Because I was a one man team i decided to use Firebase to eliminate backed work. Firebase provided me with a database, user authentication and hosting services. Some features i added to the game are: Joining a game that your fried made through a invite code, stat tracking and payment balance tracking.

I knew from the start that it would be very important to make sure that the game data was live and synchronized for all four players. This proved to be the hardest part of the project to get right. To accomplish this i used Flutters Stream Provider built in functionality in combination with a third party library, Provider. In the end i was able to sync the data so that all players were seeing the same things at the same time.

What i learned from this project is that i really like Fultter. I think flutter is a powerful tool to build UIs using code. I learned that i enjoy designing UIs and i am even more sure that i want to use Fultter more in the future after completing this project.

A little more about me, I am Anthony Huggins a student at Holberton school. I used this project for my final project of year one of Holberton. I am 21 and located in New York. I am soon starting my second year at Holberton (AR/VR specialization) and am very excited.

github link

project link

linkedin link

--

--