This is becoming an interesting question now that we discussing vue.js and the wider node.js world.
Imo, the statement "Leo is a pure python app" means that Leo should run whenever both python and pyqt are installed. Maybe I should say, installed compatibly ;-) Furthermore, it should be possible to run
Leo's bridge even without pyqt.
Particular plugins might require almost any conceivable extra packages. For example, #684:
Create a browser gui for Leo, would likely require node.js and maybe vue.js.
Otoh, Leo's core will
never require python extensions that are not part of a standard python/anaconda distro. But a plugin could conceivably add, say, a new javascript importer. That plugin could require an extension build with rust, for example.
SummaryLeo itself should work with only python and pyqt installed.
Leo's bridge should work with only python installed.
Plugins are free to require whatever packages they like, even including new python extension modules built with C++ or rust.
Edward