Skip to main content

Right now when I move the main components between files I lose all connection to the instance. The only solution to this right now is to relink all manually or use a plugin (Master by Gleb).


We need solutions to do it without losing all connections.

Apparently the architecture in place does not allow to do that (easily) for the moment. The current solutions are the use of plugins as you could point out. I recommend the DSO plugin which I think is much more adapted for this task.


Design System Organizer doesn’t preserve all overrides on nodes it attaches unlike Master, but yeah it’s a good solution too if your components are pretty simple or you don’t care about saving all overrides. However, with Master the process is more manual at the moment. Maybe you can even use both plugins to achieve the perfect result! Here is a new video showing how to use Master in case anyone is having this issue too:



Came here asking for the same feature. There’s currently “move definition to this file” for the colors\text styles, so having this for components would be a blast.


I have dozen of projects which have a lot of components scattered around in different libraries, and it’s getting hard to track what’s where.


Exact same problem here…

Seems like there are no solutions for our situation.

All the smart plugins will help us just saving some time while we need to revisit each of the dozens of project files that we have that is using our new components in a new library inside our Design System project. 🤦‍♂️ 🤦‍♂️ 🤦‍♂️


+1

It’s a big problem! ((


This is the biggest pain with Figma that and the cut and paste hidden component destruction it’s been 2 years since the product team were looking into it. I’m assuming they don’t have a solution that isn’t too high a cost to implement. Something like the plugins should be part of core even if its just an official plugin workaround.


If you can fix it in a plugin then you should be able to fix it in the core.


Also looking for a solution to this problem. I built a file for a website that includes a Page for the design system with all my components, but now want to separate the page into its own dedicated Design System file. But, as far as I can tell, if I copy and paste these master design system components into a new file and delete the originals, the newly separated design system file component won’t be linked to the instances.


Update: I believe Master will fix my issue! Walkthrough in Master tutorial video at the 3:30 minute mark: https://youtu.be/puZP7YvVsBw?t=213


Yes, a much needed feature is to be able to move master components around with zero negative consequences on the instance attachments and overrides. I’m pretty surprised this isn’t a thing already, given the number of people that need it and how much faster it would be to organize design systems that may not have been perfectly done from the beginning.


I’d add, besides the ability to move master components between files, they should also be able to be moved between entire projects.


I checked into plugins and although some are pretty decent, they are still limited in function (to my knowledge, they don’t work across projects) and require more work than should be required. They are also not super intuitive.


If Figma built this feature in, it could be so simple and easy to use, and would save so much time and make organizing design systems a lot easier, after the fact.


Example UX: Right click on a Master Component, select a new option for “move master component” and then there is an interface for choosing which project, and then which file within that project, to move the component to. Upon confirming the action, the master component is moved to the specified location, and all overrides, links, instances, etc etc are automatically updated and continue to work. It is not unreasonable for this feature to be developed - Figma already knows where the master component is, where all the instances are of that component, and all the overrides, etc. The primary thing required in development of this feature would be adding the automatic step for updating all of those records after the component’s new location is specified by the user.


In summary, the user simply chooses a new location (project and file) for the master component, and then the rest is handled automatically by Figma and nothing breaks or changes. Again, there is no plugin that can actually handle all of this easily and automatically, especially across projects.


Everything Matthew Schwartz said is exactly how I feel about wanting/needing this feature. From a beginner user or working on a really large project. Not being able to do this means having to start the whole project over or having to commit to a less than optimal way to develop a product that has real depth.


I totally agree with your points. It would be nice to be able to move components between projects. However I always assumed that if it is going to work between files, it would work between projects as well. Just like it works with styles now: you can move style definitions to any files, no matter where they are. Projects don’t have any effect on what’s happening inside of the files and what is connected where, so it shouldn’t be an issue going forward.



I checked into plugins and although some are pretty decent, they are still limited in function (to my knowledge, they don’t work across projects) and require more work than should be required. They are also not super intuitive.



Just wanna address this: every plugin that works across files would also work between files in different projects. And I totally agree that it is not intuitive and requires too much work.


Thanks for the comments


I was checking out your Master Plugin, which looks really nice


With the test version of the plugin, I tried moving a master component to another file per the instructions in your demonstration video, but had trouble getting it to work.


If I have copies/instances of a component in multiple files, and within separate projects, and I move the master component as shown in your video (copy and then try to reassign), will all of the instances within all projects and all files be updated? and this includes if I move the Master component into a different project than where the files are?


I may have to try it again…


Oh I didn’t realize this is a different thread, here is an explanation of how it works between files:



The video guide was created before I added that feature so sorry for any confusion. I’m working on updating it. 🙂


I really need Figma to implement this feature. Something that looks like the “Move to page” menu on right click but being “Move to file” would be perfect


My library is getting too large , I’ve tried to cut and paste component from my large library to another file, but it seems to break the links in the files that are using these components. Also the components that are pasted become instances for some reason, so the original component seems to be lost.

Is there a way of de-centralizing my library with breaking everything up?


Look at


Figma

Thanks for the suggestions. Some helpful plugins there, but I just reviewed them, and unfortunately it doesn’t look like any of them do exactly what the feature that we are asking for would do. That said, even if there was some convoluted way of using one or more plugins to accomplish what we want, it shouldn’t be nearly that difficult or time consuming. Figma needs to just build this into their core platform and UI. It could be as simple as a right click on master component, then a contextual menu option to select new project / file (as explained in my earlier comment on this idea)


EDIT - part of the request here should be to move master components to other projects as well as other files.


Also, it looks like some of the plugins have bugs and known issues.


Definitely just needs to be a feature in Figma core.


I totally agree, its a key feature for anyone evolving a library that has been missing for years. the reality is I would be suprised to see it fixed in the core now and the pragmatic approach is plugins and a constrained & convoluted process to avoid the issues.


Hello friends! when I click on “Mark as target” in the DSO plugin then nothing happens. I usually get a notification that symbols are marked as target so I can relink them in other documents, but now suddenly it’s not working anymore. Can anyone help please?! Thanks!


Contacting the plugin author is the best way to get the issue with the plugin sorted out.


yea I did already, but I thought I might get an answer until he replies, coz this is urgent.


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


twitter.com

WooHoo thanks will be checking this out. Update, Yep finally we are here - long journey. I just refactored my library quickly. The only pain point left is that overrides can be lost on the new moved component. Depends on how deeply you rely on these - some of my designs are 100% custom auto layout overrides. So it gets quite gnarly with nested components and overrides - you need to read these in depth


Moding components

Figma Help Center

I don’t think this is a good implementation. I cannot do anything with this feature.

According to this, I need to CUT components from the existing file in order to move them to another. But I don’t want to destroy my current library.


I want to COPY components and place them in a separate file so I could use them for another project, separately/independently of the original file.


If I do copy components to another file they act as instances there. Why would someone want to have a full page of components laid out as instances? I don’t get it.


The only reason I guess Figma did this (or didn’t do it properly) is they don’t want to store the huge duplicate libraries on their servers. They would force us to use one library for multiple projects, which is definitely not what we want. I cannot modify one component and use it equally in all projects.


I just need to duplicate the library that is it. And if I add some new screens (or I have some existing screens in some files) I want to be able to link them to any library on any page/file.


Is there a way to do it now, or did I miss anything?

(I tried with some plugins including DSO and Master but I cannot achieve the desired result)


Don’t duplicate the component, duplicate the whole file. You even said it in your post: “I just need to duplicate the library that is it.” Then remove everything you don’t need from the duplicate file if necessary. If you need to switch other files to use this new library, use the swap library feature. https://help.figma.com/hc/en-us/articles/4404856784663-Swap-style-and-component-libraries


Hey Gleb, thanks!

Well, it seems the duplicate file works now! it preserves elements as components.


Unfortunately, this works only if I have both library and the designs in the same file. If the file doesn’t become too large I can finish the project and just copy everything. In case when my file has a library in another place, then the linking is still an issue.


I still think Figma needs to work on this to streamline the whole process with libraries if they want to stay on top of the game.


Reply