Inspiration
Now that everyone has a lot more time in their hands, it should be easier to keep in touch with our loved ones. However, the reality has not been like that for me. Trying to plan a time to call is difficult, life is unpredictable and when the time actually comes one of the persons ends up being busy and unavailable. And planning is especially complex across family and friends in different time zones.
What I saw that works best to stay connected is to send a message to different friends and family asking if they are available NOW for a 30-minute call. Coucou takes the pain from writing the same message to different people and streamlines this process. It also adds reminders to keep in touch with the people you haven’t called in a while, which happens unfortunately to often for me.
What it does
Coucou makes it easy to keep in touch with the people you love. You can ping your family & friends with Coucou, and it reminds you if you haven’t called them in a while.
How I built it
I’m an iOS engineer & I’m usually building iOS-only applications. But this is so important that I wanted all my family & friends, iOS and Android, to have access to Coucou. That’s why I learned to develop on React-Native to write code once (TypeScript) and run everywhere. (iOS & Android) I am using Social-Login, “Sign in with Google” and “Sign in with Apple” to remove every constraint possible to use the application. I’m also using Firebase for the backend to handle backend logic, database, and push notifications.
Challenges I ran into
The social login “Sign in with Apple” is not easy to implement. It requires to store the encryption keys in my own backend and to generate the crypto SHA256 yourself. I was hoping Apple would make it a bit easier. Firebase is proving some utilities to help on the backend side.
I’m using Expo to be able to update the app Over The Air. (OTA) It has many advantages but also some downsides. We cannot for example use native modules and expo, it’s one or the other. The reason is because we cannot send compiled modules OTA. As a consequence, we’re limited in the tools we’re using the developer the application. I wanted to use Firebase Mobile SDK but it’s not available with Expo, so I had to use Firebase Web SDK, which doesn’t have all the features from the Mobile SDK, Analytics is missing for instance.
Accomplishments that I'm proud of
I learned a new technology in only a few days (React-Native) and created a working end-to-end application, for both iOS and Android, which I believe will help people to stay connected together and keep in touch.
What I learned
In terms of the technology, React-Native is great, it allowed me to develop quickly and for both platforms. In terms of the product, by interviewing friends, they told me that indeed they would love to have Coucou, especially for the reminders feature. We all have different lives, busy in our own ways, and it’s too easy to skip a call, another one, then forget about a friend that was once really close.
What's next for Coucou
My next step will be to add the ability to create groups of friends or family, to send only one message to the group, and directly create a group call.
I will try my best to send Coucou on the Google Play Store and App Store by today. I will update the link if it’s approved on time, for Android. (because App Store takes usually more time) Once approved, I will send it to my family & friends to try it for a few days as a beta-testing period. Once bug-free, I’ll create a Facebook page and advertise Coucou. Of course, Coucou is free and will always stay free. ❤️
Built With
- android
- expo.io
- firebase
- ios
- react-native
- social-login
Log in or sign up for Devpost to join the conversation.