When I started with Apple in 2023, one of the first things my Pod (small group of coworkers) did together was design an app. We came up with ColorMeUp to help colorblind designers keep track of colors they're using in their projects. The project wrapped up in Summer 2023, but I recently had some time to bring our idea to life!
Learning
As this was my first foray into app development with SwiftUI, I had a lot to learn. Luckily, if you know UIKit then SwiftUI isn't too hard to pick up. This allowed me to make some solid progress quickly.
Challenges
One of the more interesting problems I came across was calculating color luminance. The goal with this was to determine whether black or white contrasted most with a given set of RGB color channels (red: 255, green: 255, blue: 255 for example). This calculation was crucial in order to create a readable label on top of any color. After a lot of research, I found a few formulas that would allow me to accurately measure perceived brightness in order to maximize readability.
Is it a good product?
This project took about 20 hours to complete. Although its 100% functional, there are some small issues that need fixing in order to provide are more seamless user experience. I wish I had the time to really polish this app, but I simply don't. Here are some problems I've identified that would be first on my list to fix:
- Colors are not always categorized as expected
- Camera view should be its own view, not an embedded view
- Color-blindness picker in settings doesn't update its own color when changed
- The Library view is loads every time it's presented, rather than once at app launch