Move master components from different files to a new library

Hey @John_Stewart, it’s been a while but if that’s still relevant, I added the basic support for variants attachment! So now you can move variants between files a bit more easily.

1 Like

Unfortunately the major pain point is the needing of open each project file, individually, and manually link the old components with the new ones by using Master.
My company has more than 30 Figma files for different features and its individual different versions. So, open each file to update the components with the new library is insanely painful.

:frowning_face:

3 Likes

Got an easier workaround for free @Bruno_Barreto @Mario @Gleb .

How to transfer old figma projects and their components to a new design library.

  1. On your old project file, make sure the designs and their components are together on the same page
  2. Select all and Copy
  3. Paste them in the new design library you wish the components to live. The design and components must still be linked. ​
  4. Publish your new design library
  5. Select and Cut the designs (without the main components)
  6. Open a new figma file
  7. Go to Assets > Team Library and connect the new design library (or update it if you have already done it)
  8. Paste the designs.
  9. The components and overrides must still be linked to the new design library.
  10. Done!
12 Likes

Thanks @Konstantinos_Partheniadis, this sounds like a much easier method, however, I’m having a hard time following what the needed steps are here. Any chance you can revisit the steps here and provide a bit more detail? For one, I’m not sure what “The design and components must still be linked” means. Or similarly, what “The components and overrides must still be linked to the new design library.” means.

1 Like

Figma just released a way to move components between files natively!

Short tutorial:

4 Likes

Hey everyone, has anyone encountered overrides’ reset after moving components? https://help.figma.com/hc/en-us/articles/4404848314647

Unlike Gleb’s Master components (which I used quite often before), this Figma’s new feature doesn’t seem to retain the overrides and ended up breaking a lot of screens in my case.

5 Likes

Yeah, I’m also having the same issue! :confused:

Yep, me too, lots of overrides lost which means lost information and broken layouts. Have you tried moving back the components and then restoring the previous version? If you restore it without moving them back it won’t undo the moving.

This feature seems to bring unwanted issues:
When I copy-paste a component from one file to another, the component behaves as a library component in the destination file — I can’t just edit it without detaching, but can “Go to main component in library” — even though none of the files are published as a library.

I would understand this “feature” to act as a lite version of a full-scale library, but if I change the “master” component in the first file, it doesn’t get updated in the destination file. So, unless it’s a bug, what’s the point of this behaviour?

1 Like

It’s buggy on my side too :disappointed_relieved:

1 Like

Buggy here too.

Thanks a lot for making this possible even though it is a little bit buggy but still it saved a lot of my time. Grazie Mille.

(Note, that this is a solution for those who do not have access to external plugins within their company’s Figma Organization)

Not sure if this context helps. But, after having used the updated Figma approach to moving components to a new library. We found that this short-term pain point of overrides resetting after moving components was well worth it in the long run as we continue to scale our design system distribution initiative.

Although there is some work to be done fixing override resets prior to moving the components to a new library, you could duplicate the designs you have with components and detach them so override resets dont occur since you detached those components and then use those screens/component that are detached as reference to re-build the new screens with the componentized version.

Hope this helps!

This seems like way too much work and potential for error compared to using Master plugin Move master components from different files to a new library - #2 by Gleb :smiley:

You are correct! I did forget to mention that the company I’m working for does not allow for the use of external plugins and if they’re approved by the security team it may take months for plugins to get approved which is unfortunate in my case or else I would be using Master!

1 Like

Ah, that’s a bummer. :grimacing: You might want to report the issue with overrides to Figma support as I don’t think it’s intentional that they are getting lost.

The new Figma solution to moving Master Components from one file to another seems very tricky and not as seamless.

  1. First we have to publish the component to a library which creates an unnecessary file/library
  2. Second you need to “Cut” the component and paste it into your library file
  3. Then go back to ur file and update the linking of the component

These are a lot of tedious steps to do just to move a component. What I wish was the case here is to Right Click on your Master Component and have the option to “Move to an Existing Library” option and you select the library from the window that you would like it to be moved to and Figma can do the linking in the background so that these instances are now linked to that library.

I know it’s easier said than done but I would have preferred it that way and unfortunately a lot of Designers design their components outside of their libraries to test how they can be used against the rest of the components and layouts.

6 Likes

Don’t COPY, Just CUT

Reviving this thread!

Has anyone moved many master components from one library A to library B, but then found all the text style and colours are still linking to library A?

What’s the way around this without having to add the styles to the new library and re-linking manually?

Well, that’s kinda obvious: you are moving components, not styles, so there is no reason for styles to be moved.

In the target file, use the native button that “Move style definition to this file”