You also must find out about completely different User Interface Events like click on, mouse over, mouse down, and so forth. Here’s a good introduction to the JS DOM, and this is a guide on how to manipulate the DOM (you will study by constructing a project). And irrespective of how good you are with programming, you will have errors in your scripts.
You probably understand how important it is to build a responsive website, as people use so many different devices nowadays. There, you should know tips on how to create a new branch, how to make pull requests, and tips on how to resolve conflicts. I will start with some Essential Tools that you must know, then cowl the Programming Languages and Libraries/Frameworks that you need to learn to turn into a Front-end or a Full-stack Developer.