This is an extremely cool project, but after browsing the source code a bit, it looks like it's badly in need of modernization. CSS is Bootstrap 3. The docs reference Web Components, and I do see the use of customElements.define() so (I think?) it's using "real" Web Components technologies, but the code is indecipherable to me: var n = t.getAttribute('name') || ''; if (!n) return; var p = t.getAttribute(T_PATH) || 'n…
> CSS is Bootstrap 3. > there's liberal use of "var" > The components implementation is very pythonic - it passes "self" around to decorate with functions Could you explain why these things are bad, other than "it's not the hip and trendy way to do things"?
Using Bootstrap 3 is a problem because it hasn't been supported for over three years and is no longer actively maintained [1]. This is a problem for many reasons, security and maintenance among them.
The use of var has long been understood to be problematic due to footguns with scoping issues. It's the reason "let" was introduced into the language, and is pretty much exclusively used now.
The pythonic approach isn't a problem per-se, but it also introduces additional complexity which makes maintenance more challenging.
From an organizational standpoint, it's difficult to attract and retain good talent to work on dated code. I don't think any developer would be excited to put "Bootstrap 3" on their resume today. If you can't attract and retain good talent, your company and project will suffer.
Software is like a house, there are many complex systems that need periodic maintenance and updating. Sometimes you can remodel the house to get rid of the aluminum wiring, etc... and modernize it. Sometimes it's cheaper to tear down and rebuild. But I don't think anyone would argue "Well, it hasn't fallen over yet so just leave it".