My agency is in the process of upgrading from SharePoint 2016 on-prem to Office 2019 and SharePoint Online. Our on-prem Sharepoint uses some very elaborate custom web parts. These web parts read/write to SharePoint lists, create and populate SharePoint groups, re-permission sites and libraries, and more. The web part was originally written with Visual Studio for SharePoint 2007. It has been carried forward through upgrades to SP 2010, 2013, and now to SP 2016.