Skip to main content
Question

Optimizing UIKIT Management and Update Process

  • May 23, 2024
  • 1 reply
  • 92 views

Eva_Giambastiani

Hello community! I need your help to understand if I’m taking the right approach to solve a problem.

We have a UIKIT composed of: foundations (using styles, not variables yet), components, widgets (i.e., groups of components with functionality), and pages (i.e., groups of widgets). We have two design teams using it in parallel:

  • Team A - Product: Updates the UIKIT regularly and provides Team B with new features.
  • Team B - Internal Agency: Uses the “pages” of the UIKIT and modifies the foundations to resemble the customer’s brand.

Currently, Team B forks the UIKIT to work locally, changing styles and so on, always in local. The problem is they lose all opportunities to receive product updates.

The solution I propose is to have two kits: one for foundations, components, and widgets (Main) and a second for Pages. Both should share the same variable names for color, fonts, spacing, radius, etc. The Pages kit will consume the Main kit. Then Team B will fork the Pages kit locally and work on it. If the Main kit has an update, the Pages kit will receive the update notifications. In case there is a need to include a new widget in the local file, the overriding of the variables could be done with a plugin.

What do you think? Does anyone have a better solution?

1 reply

SandeepReddy

Hi @Eva_Giambastiani

Your UIKIT conundrum is like a puzzle waiting to be solved. Let’s break it down and see if we can find the golden key to unlock this design treasure chest! 💡

Team A and Team B—sounds like a superhero duo, doesn’t it? 🦸‍♂️🦸‍♀️ They’re both wielding their design powers, but here’s the challenge: Team B wants to tweak the UIKIT locally without missing out on Team A’s updates. Let’s sprinkle some magic dust on this situation:

  1. The Fork Dilemma: Currently, Team B forks the UIKIT like a master chef separating egg yolks from whites. But alas, they lose out on those tasty product updates. 🍳
  2. Enter the Two Kits: Your proposed solution is like having a twin kit scenario:
  • Main Kit: This one’s the foundation—the bedrock of your design universe. It houses styles, components, and widgets. Think of it as the Hogwarts castle.
  • Pages Kit: Here’s where the magic happens—the enchanted pages that adapt to customer brands. It sips from the Main Kit’s fountain of variables. 🪄
  1. Variable Harmony: By sharing the same variable names (color, fonts, spacing, radius), you’re creating a symphony. It’s like having the same musical notes across different compositions. 🎶
  2. Update Whispers: When Team A sprinkles updates into the Main Kit, the Pages Kit perks up its ears. It’s like receiving secret messages via magical owls. 🦉
  3. New Widgets, No Problem: If a shiny new widget appears, Team B can override variables with a plugin. It’s like adding a secret ingredient to a potion. 🌟

But wait, let’s consult the ancient scrolls (okay, the community forums) for more wisdom:

Remember, every design kingdom has its unique path. Your solution is like a magical bridge connecting parallel worlds. 🌉


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings