I am currently developing a python module, say my_package
, which contains some image processing algorithms. It contains a setup.py
for a convenient installation. Now I want to add a gui to the package so that users can try the algorithms and play with parameters. The gui will use Qt from the PySide2
package. Are there best practices for the package / directory structure for modules with both algorithms and gui?
At first I wanted to create submodules my_package.core
and my_package.gui
. However, since users can only install my_package
as a whole, this will add the PySide2
dependency to all users, even if they just want to use the algorithms without the gui. Is it better if I create two separate packages my_package
and my_package_gui
, both with their own setup.py
? Or will this be confusing?