Each palette has the same name but all of the colors are named the same, each palette will have colors named background-alt, primary, quaternary, etc. extension Color { struct Palette { let name : String var mainBackground : Color { Color ( fromPalette : self . palette unsurprisingly is the name of our color palette, and semanticName is the name of the color we're pulling out of it, such as primary , secondary , or background-main .