Until recently, Java GUI development in the CERN Beam Instrumentation Group has followed an ad-hoc approach despite several attempts to provide frameworks and coding standards. Triggered by the deprecation of Java's Swing toolkit, the JavaFX toolkit has been adopted for the creation of new GUIs, and is foreseen for future migration of Swing-based GUIs. To increase homogeneity and encourage modular coding of JavaFX GUIs, libraries have been developed to standardise accelerator context selection, provide inter-component GUI communication and optimise data streaming between the control system and modules that make up an expert GUI. This paper describes how this has allowed the use of model-view-controller techniques and naming conventions via Maven archetypes. It also details the modernisation of the software delivery process and subsequent renovation of the software portal. Finally, the paper outlines a vision to extend the principles applied to this Java GUI development for future Python-based developments.