Build a Framework
There are so many different ways of doing things with JavaScript, it is difficul to decide what to do or what framework to use.
Knowing what is needed is required to make informed decisions.
A good place to start is with no framework. Even when choosing to go without framework, you still need to decide whether to use small tools or build everything vanilla.
Micro Libraries
Outdated, but interesting website http://microjs.com/
1. Templating
hyperscript & jsx
2. Routing
page.js
3. DOM Manipulation
Vanilla or dollr
4. Event Handling (not DOM)
events (Node events/EventEmitter compatible module).