Is maintaining two code bases a big problem?


In our company we are about to start developing a Desktop version of our web App. The Desktop up is a must, and we are not sure whether to keep our web App or not. I would really like some feedback on this regard.

Can you give some input on how you manage this?
Do you have shared-code? Are you using git sub-modules for this?

Thanks a lot!


On a general level, whether or not to keep your webapp next to a native Desktop app, should be driven by user behavior. Run both in parallel for a while, get analytics from both platforms and see whether the web version is worth keeping.

More specifically to sharing code: It should not be difficult to port your web app to an electron-based version. That’s essentially what it’s there for. Re-use of web code is a big component of why people develop on it.
Of course your webapp should already be modularized as much as possible to make it easy.

Whether or not to keep the code for both in the same repo, I’m not sure. Generally, it’s probably ok, as long as you keep it simple and well organized.
Just don’t mix things, I guess. I.e. don’t send electron code to the browser client in your web app etc.