I wanted to know if it is possible for a developer to integrate their tool/plugin into kicad distribution. I have seen the routing feature to be basic and wanted to develop a plugin which will do routing and placements automatically with better results then the one that already existed. I have already built and tested on a few schematics and the algorithms seems promising.
I wanted to know what will it require to add that plugin into kicad distribution and would my code need to be public/open source.
External plugins aren’t really part of the distribution. You host the releases yourself, people often use Github or Gitlab, and then notify the Plugin and Content Manager librarian (a person). I think they’ll put up their hand soon.
As was said, external plugins, like what you see in the plugin manager, won’t be distributed with KiCad.
If the code is integrated in KiCad, of course it must be open (GPL). But external plugins don’t need to be. Anything which is taken into the KiCad repositories, to be distributed with KiCad, including example projects, docs, images, libraries etc., must be Open Source. If you contribute to KiCad, you have to open your source.
This is not a fully correct statement. If you distribute a plug-in that links to the KiCad Python library, your code must be GPL or compatible licensed.
If you use the new IPC plugin framework, it does not need to be.