Depending on what your stakeholders need, you may want to reimplement what you have in a language more programmers know — or reimagine the whole thing as a cloud application.
Customizations, plug-ins and custom integrations are even more prone to bit rot than the systems they extend: the host system ends backward compatibility, and the endpoint APIs they depend on are deprecated out from under them.
A port is also the one moment when adding what users now take for granted is cheap rather than disruptive — localization, encryption, secure automatic updates, scalability, cloud access, instrumentation, cross-platform support, and a documented open API.

