Hey folks! I’m excited to share Banter, a mobile app that I’ve been working on with Expo.
It lets you have conversations with your friends and family by sending video messages to them. Think of it as a longer-form Snapchat that’s focused on conversation instead of on the camera. The focus is on connecting people who live far away from each other. It’s more personal than texting, because you can actually see people’s faces and hear their voices, and it’s more convenient than video chatting, because it doesn’t rely upon you having synchronized free time with other people.
I built it with Expo and Firebase, and Expo in particular was really great at helping me support both iOS and Android at the same time. I developed the prototype initially with my Android phone, and only had to make a few tweaks in order to have it work perfectly on iOS as well.
A few gripes that I have include how difficult it is to work with Firebase when using Expo. It would be better if I were able to use Firebase natively instead of using the web SDK, since it would let me use additional features such as analytics and Crashlytics.
I also found it annoying to integrate with other analytics platforms such as Mixpanel, since I couldn’t install it natively in my app. I had to work around it with expo-analytics-segment, but this prevents me from using some native features of Mixpanel such as push notifications.
A big feature request that I have is for Expo to support in-app purchases! I think that would be amazing. And I’m not sure how feasible this would be, but it would be fantastic if I could run arbitrary tasks in the background. Uploading videos to the server takes a while, and currently it needs to be done with the app in the foreground.
Overall, Expo allowed me to build my app for two platforms much faster than if I had to do it natively for each platform (but at the cost of making it harder to integrate with third party libraries).
I’ve published my app on both the iOS App Store and the Play Store. If you’re curious about it, check it out here! https://getbanter.io