I'm making a prediction that the entire JavaScript ecosystem will collapse soon. Progress that's happening in JavaScript ecosystem just doesn't make any sense.

None of tools and solutions are nice. Everything is ugly and complicated. There's no beauty to any of the tools. There are no fundamental tools either, and the existing tools aren't stable. Everything is evolving too quickly. You have a choice of 25 frameworks, libraries, tools that change every day and break between versions. The complexity is growing and the ecosystem is getting extremely fragmented. Releasing garbage is celebrated. Additionally, you have an exponential number of idiots pushing single line libraries that are just an if statement to npm and boasting about how many libraries they have created.

Instead of just writing your application from the ground up, you're in despair trying to choose the right frameworks and libraries, panicking about not being able to understand them, and then then you spend weeks learning them. You end up writing application that's glitching and you've no idea how to fix it because you depend on a dozen different packages that depend on even more packages. The worst part is that you don't even need them. You've been tricked by peer pressure into using them.

When you have a complex, fragmented ecosystem, and developers are in stress because they can't understand and learn tools quickly enough, then the only logical conclusion that it will collapse, and only a few technologies will survive that will get mass adoption, and everything else will be forgotten.

Similarly, devops engineers are in even higher stress because they get to see what developers don't – builds that take half an hour to complete, absolute and total dependency hell, and deploys no longer work a month later because of version mismatches.

You should prefer core-language solutions to small abstractions to small helper libraries to general libraries to frameworks. Software should be developed using the least amount of complexity, dependencies, effort, and using fundamental tools that have been and will be here for the next 20 years. Cut those dependencies, you don't need them. They're here today and won't be here tomorrow.

I wrote more about it in my popular essay Frameworks don't make any sense.