Inspiration
A couple years ago, I was lying on the couch binging on YouTube while watching surfing vlogs. One of them was about how it is about a day in a competition.
I just watched how the surfers struggle to hear scores and priorities while they are in the water competing during a heat.
Specially if the conditions are tough, like windy weather or a big swell, the can't hear anything from the PAs on the shore.
That's why I came up with the idea of building an Apple Watch app to solve this problem. The surfers can have a portable scoreboard updated in realtime in their wrist.
Funny enough, a couple months later, Apple and the World Surf League made a partnership to have a private Apple Watch app for the pro athletes of the CT.
So far, there is still anything like this on the App Store, so I started building this project in public a couple months ago.
What it does
SurfBuddy is an iOS, iPadOS and Apple Watch app.
From the iOS or iPad you can create a surf session (competition or training), add participant, link participants with other existing SurfBuddy users (so they can join the session with their watches).
On the Apple Watch, surfers can join the surf session, so they recieve in realtime every event that is sent from the devices on the shore. Wave scores, priorities of the heat, scores needed to win, time remaining...
How we built it
I built it in SwiftUI, Firebase Authentication, Realtime Database and RevenueCat.
Challenges we ran into
First of all, I had the problem that web sockets are not allowed anymore since watchOS 9. There fore, even things worked well on the Simulator, in a real device the Firebase Database SDK didn't work at all. So, I have to research and I found that existed a thing called SSE or EventSource, that turns out that is a HTML 5 standard, and Realtime Database provides an API for app. Another tricky thing was that i had to rely on a small third party library in order to connect to a EventSource API.
Accomplishments that we're proud of
Developing an app for watchOS it's pretty tough. Debugging wireless in the Apple Watch is just a pain, it fails continuously so this is a work that put one's patience beyond limits 😅
This is my first ever app for Apple Watch, so this is quite a milestone for me as a solo developer.
I'm also proud of detecting a problem of the "real world" and solving it with an app. I think that's the best feeling as app creators we can have: solving people's problems.
What we learned
I learned how to develop for watchOS, discovered a new technology like EventSource and I learned so much about the rules of surfing in competitions — I even visited some IRL for researching purposes.
What's next for SurfBuddy
After the launch on the App Store, my very next move is try to do some influencer marketing.
I don't have budget for ads or campaigns, so I am going to rely on organic marketing.
I am going do cold mail and send DMs to surfers on Instagram and TikTok, sending them promotional codes.
I will also contact to surf schools to offer them the product and trying it for free for feedback.
Finally I will create vertical content my self to post it on TikTok and hopefully gain some organic traction.
Regarding next app features, I have in the road map the ability to send instructions to the surfers in the water. Choosing them from a catalog of quick instructions or being able to customize your own.
I also want to display better stats and charts of the session for being able to track the performance and progress.
There's also more ASO work to do like localizing the app and App Store, improve the screenshots, do A/B tests and try keywords...
I hope you like the idea. This is a project I was thinking for a couple years and finally decided to implement it!


Log in or sign up for Devpost to join the conversation.