it seems outside the basics you’re just expected to learn by yourself
there is like no resources on organizing or planning a good plugin
nor on anything i should avoid
this is concerning especially since plugins have been on roblox for a long time
like where do i put my libraries, do i just make a new copy of fusion in every plugin
i make
compare this to making a game, which have multiple videos dedicated on organization and good practices
You can try looking at the source code of popular plugins and analyze their structure as a reference, I do this a lot whenever I find some interesting plugin (though you need to own the plugin first).
You can use AssetService/InsertService (don’t remember which) to insert plugin into roblox studio workspace or use BtrRblx browser that allows you to look into the source code of models.
Pretty much, at least I don’t think there’s any other alternative to this.
You have to treat plugin as a typical library but with user interface or something like that. Each library puts its own dependencies into itself, meaning if you put 2 libraries with same dependencies into your game, you will have a duplicate of libraries they depend on. Same with plugins.
I’m not exactly an expert in plugins development (hence why my tutorial covers only the basics), but you have to keep in mind to not leave any leftovers after its work. (e. g. plugin creates some asset for something to work in it, like a folder in workspace with parts that are there just for visualization, but it doesn’t get deleted after the plugin’s work is finished, creating an unwanted asset in User’s place), you could use Archivable property for this. As well as implement a Undo/Redo function if it changes something in the place.