We're developing a web app that visualizes financial data. We have our first customer, but hope to get more. The terms are that
- the customers pay a setup fee, to customize the app for their needs
- the customers pay a monthly fee to license the app
- the customers install and host the app on their own servers
(Some details: the server just requires a simple node.js installation. There is no database required. Everything is easily installed via npm. All the modules used a open source.)
Our source code is not public, but it doesn't need to be obfuscated or hidden from the customer.
How should we distribute the source code to customers? GitHub seems logical, with the idea that customers just use git to deploy and update. But a customer should only have access to the source code with the customizations made for them – not for other customers. What's a good approach to setting up repositories for distributing these different versions? Where do those live in relation to the development branch?
How do we go about licensing the code?
That's a big question. Hopefully not too big. Partial answers or links to articles are welcomed. Thanks...