Best practices for multi-platform (iOS & Android) design system?

I vote to go with the first option! It’s good to trust your team (or if you don’t trust your team, practicing beginning to trust them). And if they don’t use the component as intended then that gives you an opportunity to build trust and invite them into the process: ask them for feedback on what will help them work accurately and efficiently. It may be documentation, for example!

On the tactical end of things I’d say is that if the architecture and visual design of the components will truly be 1:1 no matter the device (iOS v Android) then I think the added bulk of 2x-ing your variant sets isn’t worth it. Remember, Figma loads all variants in the background when you drop an instance on the canvas, so if you’re concerned about file performance and memory usage then option 2 is a riskier path to embark upon.

Ah! And another downside to using variants to manage device/OS is you’ll have to choose one of these device types as your default. if it’s iOS, then designers working on Android will have that extra adjustment to make with every component they drop onto the canvas.

This is actually reminding me of similar advice I shared in another thread, but about theming!

It sounds like you’ve got great instincts given your being weariness of managing more variants than necessary.

2 Likes