New app while on Shelter in Place: Gymlocker

While on quarantine, I decided to write an app to learn some new technology.   I saw tons of people on social media posting workouts and I wanted to try them all.  The problem I found was my photo library was overrun with screen shots of workouts.  Seemed like a problem I could overcome with an app.  That is where Gym
comes into the picture. See what I did there?

Here is how it works:

  1. Screen shot the workout from anywhere:
    • Instagram
    • Facebook
    • iMessage
    • Email
    • Notes
    • I like to say if you can screen shot it, you can add it to Gymlocker
  2. Crop the image in the markup tool
  3. Tap the share button
  4. Pick Gymlocker from the apps listed
  5. Enter a title for the workout
  6. Tap Post
  7. Delete the screen shot so you don’t clutter your photos
  8. Open Gymlocker
  9. There it is stored in your locker for later
I learned some new technology along the way.  First of all the entire app is written in SwiftUI the new user interface paradigm from Apple.  I have to say, it is really great.  Some people are saying it is not ready for prime time, but I don’t agree.  This thing is well thought out for a 1.0.
I also used the new vision framework to scan the screenshot and pull all of the text off of the image.  This is used to place it in a text field for logging the workout.  Also, it allows users to copy the text and save it to the workout  app of their choice.  So they can use Gymlocker to save the workouts, but it is not a requirement.  If the user prefers to just use it to catalog workouts for the future, that is perfectly ok by me.
Gymlocker also runs on CloudKit.  This means the only login required is your Apple provided iCloud account on your device.  Great news for me, no personal data saved on my servers.  I had never used Cloudkit before, so it is a new one for me.   It was a great learning experience and tied with Core Data, it makes updating and syncing across devices seamless.
iPad is supported also.  If you are an iPad user, Gymlocker is fully supported.  I found that I was doing a lot of browsing on my iPad during quarantine, so I had to make sure it was covered.  The Mac is coming soon.