Speaking to My Boyfriend's Mom
A Syrian refugee, my boyfriend’s mom struggles with English. She speaks an Arabic dialect not supported by Google Translate called Levantine.
So, I built an iOS app that delivers real-time translations between Levantine Arabic <-> English.
The name, “Haki” means “talk” in the Levantine dialect.
We used Haki to share traditional Arabic recipes & make fun of my boyfriend (her son).
Maybe now I’ll finally win her approval :)
Planning Process
Before building, I knew this project needed to fulfill 2 requirements:
- Easy to use - needed to work for people of all ages
- iPhone App - quick, on-the-go access to translations
After exploration, I decided to delay adding the text-to-speech and speech-to-text features for now, as I wanted the app up and running ASAP. For translations, ChatGPT’s 4o-mini model provided the quickest, most accurate ones, which I tested thoroughly amongst his family members.
And yes, the original app name was pls let me marry your son, but in Arabic. Decided shortly after scoping that I should probably come up with a new name :0
MVP: a native Swift UI iOS app that uses ChatGPT 4o-mini from the OpenAI API to provide accurate, instant translations for the Levantine Arabic dialect.
Wireframes / Designs
Build Process
During the build, I learned a lot by playing around with Swift UI styling. I primarily build web apps using CSS Components, so for this project, it was mostly a matter of familiarizing myself with new syntax. Implementing OpenAI’s API was simple, but the challenging part was configuring the prompt based off of which language was inputted. After some time overcomplicating, I used a simple Boolean to track which language is selected, and then attached the 2 separate prompts to that Boolean. Since there is no Auth implemented, key phrases are stored using Apple’s provided UserDefaults.
Currently in the process of beta-testing my app on TestFlight. Apple docs are lengthy, and esoteric, but was able to do it successfully! Aiming to have the app launched on the App Store soon!
Future Features
As this project grows, I would like to implement more features to make this app more intuitive and seamless:
- Talk-To-Text: Much faster than typing, will make more a more seamless experience for older folk who have a difficult time seeing the screen/typing.
- Text-To-Speech: I can read Arabic, but my pronunciations aren’t the best. Implementing authentic sounding pronunciations will boost my understanding and memorization.
- Transliteration: Hopefully this app will be able to help others as well! I want this app to be easy to use by those who have never read of spoken a word of Arabic in their life.
- Android Compatibility: I would like everyone to be able to use my app. Potentially will turn into a React Native App in the near future.