What's the best way to update a shared library?

My team uses a shared library with several components. It’s easy to make changes to that library and publish them for the end users.

What I can’t figure out — what’s the best way to make a mass update to a library from an external file? For example — we copied a community file to our organization and published the components for our consumption. The community file is updated by the author. If we delete our copy of the file and replace it with the new one, all instances in our files break. Basically, how do we compare our copy with the newly updated file and update our file accordingly?

I believe there are some ways of swapping a main component with another main component (without breaking links to instances), but with 100 components that’ll take forever. There should be an automated way for Figma to look at 2 files, compare, and swap the components with the newly updated ones.

Thanks!

2 Likes

Example of why people need this: Ant Design Open Source | Figma Community

Hey!
I’m on the same page, I copied a community library to my Org but can’t figure out how to update it now that there’s a new version on the community one.
Is there even a solution?

1 Like

Did you find some answer? I’m trying to find a solution to the same thing, I want to start using the iOS 17 library Apple just published in the Figma community.

2 Likes

Hey, @Dave_Whitley. I’ve spend a lot of time searching for an answer to this question, and in the end hav to figure it out. So what worked for me was this:

  1. After publishing the library to my team, I’ve made a copy of it and used it as our own style guide (basically to make use of the styles). Once there’s no variables in this project, we felt free to create our own, and applied them to the existing Ant Design styles, creating sort of “company theme file”.
  2. We created a separate file to be our own component library, and imported instances of the AD components from the shared lib.
  3. Then, we used the swap feature to swap between the original style and the ones we’ve created (which, as a copy of the original, had the same namings).

So, in the end, we have the shared lib untouched, wainting for updates, our own style guide file and our own Ant Design components lib with our “brand theme”.

Let me know what do you think about it.