When you start programming your first web app you are doing something that you have never done before. It's a new challenge, a new opportunity, and in the case of software development, something so specific that it's probably never been done before.
Confusion, therefore, is a sign that you are heading in the right direction. It's a signal that you have engaged in the problem solving pursuit that is math and technology and that it's time for you to dig deeper and keep going because clarity awaits.
The great news is that you're not doing it alone, and someone has probably had the same issue you're having. Because of this, there are about a gagillion resources at your fingertips!
Everyone was a beginner at some point, even the most experienced programmers and engineers. The key is to, as Nike says, just do it. It might be awful. It might not even work. You might look back on it after you've got more experience and be embarrased by it. And that's okay.
There is a famous quote by Reid Hoffman, the founder of LinkedIn:
"If you are not embarrassed by the first version of your product, you've launched too late." - Reid Hoffman
While its important that each version of your product works, it's also important to get your work out into the world to learn from your customers/clients/users experience and make your product better.
When you are learning a new technology, whether you are learning to write your first programming language, or just the latest framework, you go through this uncomfortable phase where you know that the code you are looking at is doing this THING but you don't understand HOW exactly it's happening.
This is a normal part of the process of learning a new technology, and in fact, it's a critical part of the process.
You see when you encounter a new programming language part of your learning process includes learning to train your eye. The way to train your eye is to read a good deal of code even when you don't totally understand what it's doing.