YGWM is a minimalist framework that aims at speed and compacity so only important features are kept. Fancy visual effects are NOT necessary so if you don't like the look, hack the CSS ;-) But if it doesn't run on a Raspberry Pi, forget it.
YGWM must load fast so a minifier has been integrated in the system. A "development" version loads all the files individually and can generate the "production" single file, devoid of useless spaces (plus a few dirty tricks) and easy to gzip. This is good both for the user (little latency) and the server (reduced load or caching for the web host).
YGWM started in 2009 as a "quantum leap" project because the YASEP homepage was getting cluttered with widgets. Each new page would reload the whole system and there was no way to let pages communicate...
So I opted for a "single page" approach where all the actual pages are included in a window manager. The whole site is now loaded once and the JS modules share data and code. They can communicate and call each other!
Soon the window manager was not enough so the startup systems, the minifier, the documentation and a lot of widgets took a life of their own. In the summer of 2013, a new website ( http://ygwm.org ) was created for the sole purpose of hosting and documenting the framework (without the YASEP specific files), in the hope that other hackers would benefit from it and expand its domain of use. What new applications could this system spur ?
This "fork" from YASEP is also the opportunity to rewrite old dusty parts that pre-date HTML5 and many advanced methods. Actually I have learned JavaScript by developing YGWM over the years. For example, window positions were stored in a cookie that is now replaced by "web storage" element, which opens new opportunities for data persistence and convenience. Worse offenses to coding standards are present though and need to be corrected !
20200412 : Time to reboot the project :-)
I intend to roll up my sleeves and bring YGWM into the 2020s with a big overhaul ^^ Particulary, to develop desktop applications in JavaScript, a window manager is veryinteresting because it allow to create internal frames and to create complex and personalized experiences.