© 2024
Thursday January 16 2025
Mobile App Developer | Backend Developer | Web Developer | System Designer
Mahjong la is a cross-platform Mahjong calculator app, allowing users to easily calculate and track their Mahjong game scores on various devices.
Owner
UI/UX & System Designer
Mobile App Developer
Backend Developer
Public
iOS, iPadOS, Android
Dart
Flutter
Bloc
Firestore
Firebase
Fastlane
Github Actions
git
Conventional Commits
Mahjong la is my hobby project. My Mahjong buddies wanted me to create an app to track game scores. Since Flutter was popular at the time and caught my interest, I decided to take on the challenge and develop this cross-platform app. It was my first experience with a cross-platform framework, and initially, I believed cross-platform frameworks like React Native and Xamarin had inferior performance compared to native solutions. However, I was impressed by Flutter's performance and how easy it was to build the app with it.
The app provides a light theme and a dark theme, allowing you to choose the one that best fits your preference or environment.
Powered by Firestore, a real-time sync database, all users across different devices participating in the same game can instantly view the latest scores as updates occur in real-time. This feature ensures that everyone stays informed immediately.
You have two options to join a game: you can either scan a QR code or scan by Google Nearby. Google Nearby utilizes Bluetooth technology to enable communication between different platforms, ensuring that Android users can seamlessly join iOS users' games, and vice versa.
Every user has their own unique ID with the pattern (username + # + system generated 4-digits number). This ID structure is inspired by Discord, allowing users to choose their preferred username without concerns of ID collisions. Users can utilize these IDs to easily add friends within the app.
The app offers two interface languages: English and Traditional Chinese.
© 2024