


In total, we estimate that the automated translation saved about 100 days of development, which represent about 25% to 30% of the total development effort. Sweet Home 3D 6.4 release announcement here.sh3d file format).įor more details on the resulting application, you can follow the quick links below: However, we are able to automatically transpile some important parts such as the XML SAX Handler, which reads XML home models (the. The I/O part is mostly changed since the client/server Web environnement is fundamentally different from the desktop environment. The UI is mostly rewritten manually, with the help of JSweet that performs one-shot transpilations to give a head start to the programmer. To make it work, JSweet also transpiles automatically general-purpose Java packages that are part of the AWT/Swing library, such as the and packages (resp. Amongst these, Emmanuel and I are able to transpile automatically around 50K LoC, leading to 68K JavaScript-generated LoC ( by automatic transpilation, I mean that the generated JavaScript code can be run in the browser as is, without any manual adaptation of the code). Sweet Home 3D represents 130K Java Lines of Code (LoC). In this post, I will explain how JSweet helps building the online JavaScript Web version of an Open-Source interior design application called Sweet Home 3D developed and maintained by Emmanuel Puybaret. A real-life example of migrating a Java application to JavaScript.
