Skills
About
A local hairstylist wanted to replace printed color palettes with an app that people could use on the go. These palettes were used as a reference for one of her services called "Color consulting," where clients were recommended a specific set of colors to wear based on their skin tone, eye color, etc. Printed color palettes were bulky, costly and inconvenient to carry around to places where they might be needed.
What it does
Based on the things mentioned above, clients would be given a code to enter in the app. That would tell the app what set of colors to display. The app would then allow the user to view those colors in categories. They could then tap to expand a particular color, which would fill the screen to help them match it with an article of clothing.
Challenges I ran into
Although a seemingly simple app, there were some significant challenges. The biggest one was getting accurate digital color values based on printed palettes. Although there were digital versions of the palettes used to print, the resulting printed versions looked much different from the digital versions. This required many different approaches on my part. In the end, it meant manually taking pictures of each color under perfect light and extracting the color values from those images. With a large set of colors, this was very tedious.
The other big hurdle was getting the app onto the Apple App Store. There were only two different plans that would meet the criteria, the standard Apple Developer program and the Apple Developer Enterprise program. The Enterprise program at face value seemed to be the better fit, although being more costly as this app would only be available to clients of this specific business. However, the program stated that it was meant for distribution to employees of the company, not clients. After multiple attempts, I eventually managed to get it on the actual App Store under the standard plan.
What I learned
Colorstick was the first app I made for a client. This was also my first professional experience using React Native, although I now prefer to use Flutter for cross-platform apps. This was also my first time deploying an app to both the Apple App Store and the Google Play store.