Inspiration

Last year during a short trip to Barcelona my friend introduced me and my other friends to padel. Our entire group liked the sport from day one and back in Germany we started to met at least once per week to play it. We quickly noticed that we had a hard time to count (or should I say remember? :P) the score especially during a longer match as we were all beginners and none of us played another racket sport before. We tried out some existing apps to assist us but none of them fitted us well. So I decided to built one for ourselves tailored to our needs. The idea to release this to the public came actually very late.

What it does

PadelTick allows you to track the entire padel match on your Apple Watch. This means you tap on the watch to log each point which is super fast and once you get used to it you do not even think about it anymore. Then you have the current score, sets and serve side visible on the watch. Also it automatically starts a workout for each match. The finished matches get synced to the iOS app so you can view in detail history for each game and the burned calories and max. heart rate. You can also add your friends to the match so they view it in their match history.

There is also the option to share the match live with another user on the other side of the court. So you no longer need to shout the current score across the court.

How we built it

Since I have a regular full-time job as Senior iOS Developer I built it usually in the evenings and during the weekends. And since we did a lot of testing on the court I wanted to ensure that as much new features / bugfixes are included in the current unreleased version as possible which often resulted in me coding in the car on the way to the court - of course I was not the one who drove the car! The app itself is built entirely in SwiftUI which was a breeze. I also wrote the backend by myself using Vapor Swift.

Challenges we ran into

The live match sharing was quite challenging as watchOS does not support WebSockets anymore and we needed to come up with a completely different solution for it. This needed a lot of refinement. And since real testing was only possible while you are on the court some features had a longer than usual development cycle.

Accomplishments that we're proud of

  • Getting good user resonance from the beginning
  • Even after going "viral" the self-hosted backend did not crash
  • Very special implementation of the match sharing which allows to share the match with another watch in actual real time

What we learned

  • Have a robust logging solution for watchOS as OSLog does not allow to export logs without a user profile is essential
  • Ship fast and do not neglect posting on social media (I post every day at least 1 video per platform)
  • The RevenueCat dashboard is very handy as I relied on pure StoreKit & App Store Connect for the initial launch as I could no longer wait to launch and I completely lost the overview especially due to the huge delay in App Store Connect!
  • To not overcomplicate things - a very tiny VPS is more than enough to handle the entire backend

What's next for PadelTick

  • I want to explore more content ideas for social media and also hire influencers
  • Trying to better understand the Instagram algorithm because videos there only have a couple thousand views in total
  • I'm currently adding new features requested by users (Watch Complications & Americano Tournament Support)
  • Exploring ideas to use the iOS app more without the need for an Apple Watch
  • Add a public roadmap where users can request and vote on new features

Built With

  • revenuecat
  • swift
  • swiftui
  • vapor
Share this project:

Updates