There’s a popular saying among framework fanatics that goes somethings like this:
Vanilla JS just means “a homegrown framework without docs.”
It makes for a great quip. It’s also wrong in three very clear ways.
1. Vanilla JS, even a fair amount of it, is not the same as a framework.
But there’s a good chance you won’t.
And remember, a framework is the literal starting point on a React or Vue project. All of the app code you write is in addition to that baseline.
You’d have to write a lot of vanilla JS for it to be the same as writing a framework.
2. Vanilla JS has documentation.
Admittedly, there’s no “one true source” like there is for Angular, React, or Vue. And some of it is of varying quality.
But there is documentation.
The Mozilla Developer Network is literally documentation for the entire web platform. It’s community-driven, so some of it is better than others. But it’s the most obvious form of documentation for vanilla JS.
3. The apps people build with frameworks are no more or less documented than those built with vanilla JS.
What are the conventions, how is it structured, and so on?
React, Vue, and the like don’t force a single way of building apps on you. There are countless different ways people build things with those tools, and each one is unique.
If you team doesn’t bother writing good documentation, then it doesn’t matter if you used React, Vue, or vanilla JS. The app isn’t documented.