This is what I am thinking of: We would package our python server that the user installs on their machine. The user then opens our internet hosted web client. The client calls APIs at localhost:5000.
The customer is happy because their files never leave their machine. We get real time analytics of what the user is doing with our product. We get to push fixes to the client quickly and conveniently. The server responds to our client only because we set the allowed origins.
I've been playing around with a POC and it works without issues so far. However I know that I'm definitely not the first person to think about this. Yet I do not recall seeing any product that is deployed like this. This leads me to believe there are some big issues with this idea which I seem to to be missing.
What are those issues? Have you seen/done something like this?
In the same spirit, you pushing updates to servers running on someone else's infrastructure is a problem - they need to be in control of their own servers, so odds are they want to do the updates themselves.
In short, this setup may be good for you, and may work for some customers, but you are fighting against some standard IT practices.