Yeah, of course packages like these require that you write your code with some other principles in mind than “normally”. Although I have to say, one really important aspect for me was that Space is not as invasive as e.g: React.
Basically you can write all of your app code in plain Javascript without any reference to the Space framework. You only have to add a Dependencies
object your classes/prototypes (think: annotation) which tells the injector what you require. The cool thing is, you don’t need Space at all to test your business logic classes – you can simply provide the dependencies yourself during the tests, possibly some stubs or simplified implementations.
The Space modules / app are just a convenient sugar on top of the basic building blocks. You could also just use the Space.Injector
with a completely custom way how your app is structured and initialized. And hey, if you come up with better solutions for some of the implementations, drop me a line – i am always happy to improve Space
Regarding bugs and issues – you wouldn’t be the first one to use Space for a production application and I am working on two big apps completely built with these tools every day. So this package (and the many others built on top of it) won’t die any time soon and in fact i am constantly working to improve the details. Of course, everything is completely unit tested and written in a really simple style, so that bugs have a pretty hard time in the repo