“The Sound of Music” may preach, “Let’s start at the very beginning, a very good place to start.” But almost every developer knows it is a foolish plan. The right place to start is with a firm foundation built by a great team of open source developers. Clone their hard work and then add just enough code to make it your own. There’s no need to repeat what everyone has done before.

It’s an easy plan—once you choose. Unfortunately, choosing that foundation can be almost as hard as starting at the very beginning. The world of web frameworks is a very active area of development and there may be dozens of good open source projects that would be great starts for your project.

To make matters worse, the different teams who created these different projects set off on a different path because they had serious philosophical differences with the other options. They looked at the other frameworks and decided that they could do better. In other words, they did it for a reason and you may or may not agree with their decision.

The list of good places to start below intentionally leaves off the market leaders React, Angular, and Vue just to make things a bit simpler. That doesn’t mean the big three are bad. They still might be the right thing for you. It’s just that they’re talked about constantly and those discussions leave out some pretty good other options.