What it does
A robust theme and palette generation utility designed from the ground up with the designer in mind. We built a product that allows designers to fluidly and easily generate color palettes and themes for their projects. From websites and apps to documents and presentations, Chroma provides a quick and simple way to get started.
How we built it
We first designed the application in Sketch and then we built the application in Objective-C for iOS devices. We leveraged Apple’s NSKeyedArchiver to store the color swatches on the user’s phone. Everything else was fairly standard and we used the built-in iOS libraries to implement all the features for this application.
Challenges we ran into
Color conversions were not as simple as we thought (especially CYMK and HSL). There were many different formulas for HSL that were offered online -- each slightly different from the other and then there was CYMK, which technically didn’t even have a standard formula (see “what we learned”). Otherwise, the UI was somewhat painful to implement as we tried to create our own theme instead of using the built-in iOS elements. As usual, auto-layout was not very fun to work around, but we finally made it work.
Accomplishments that we're proud of
We got the app to work well and to convert the colors accurately. We were also proud of the export feature that allows users to export a small image that has all the swatch colors which can be easily shared via text, email, etc.
What we learned
Converting from RGB to CYMK is non-trivial as it’s dependent on color spaces and there aren’t perfect 100% mappings between them and thus our numbers may be inaccurate at times. We also learned that there are multiple ways of calculating tetradic colors (square or rectangular).
What's next for Chroma
We will be releasing wake to the app store soon. Stay tuned! We are thinking of also adding a feature where it can create a color palette from an image instead of having you manually select it yourself. We're also looking to change the UI a little bit (by using different fonts, etc.) but we haven't really nailed down the details yet. Also, we didn't have the time to successfully add in search and filtering for the swatches nor add in any animations, but those were not as high-priority on our todo list so we're probably going to implement those before we submit the app to the app store.