1. A non-transitory computer-readable storage medium for storing instructions that when executed in a computing device cause the computing device to generate a graphical user interface, the medium storing: one or more instructions for analyzing an original graphical user interface created in a first software environment; one or more instructions for creating a platform independent description of the original graphical user interface based on the analyzing; one or more instructions for generating a proxy graphical user interface from the platform independent description of the original graphical user interface, wherein the one or more instructions for generating a proxy graphical user interface comprise: one or more instructions for creating a description of the second software environment, and one or more instructions for creating a translation filter from the description of the second software environment, the translation filter traversing elements in the platform independent description of the original graphical user interface to determine whether the second software environment supports the elements in the platform independent description of the original graphical user interface; and one or more instructions for integrating the proxy graphical user interface into a second software environment that differs from the first software environment.