Practising is, by far, the best way to learn JavaScript. No matter if you read hundreds of articles or watch dozens of courses, you need to practice coding to really learn. However, for many beginners, it’s hard to come up with ideas. Which ideas or projects should I create to practise?

Create simple clones of your favourite websites or web applications. That’s what I’ve always done to practice coding when I was younger. If you’re at the very early stages of your learning journey, copy only the basic functionality. For example, if you want to build a Reddit clone, just make it display the posts of a single subreddit.

A good source of projects ideas is This site was created by developer Chris Ferdinandi, and has 21 project ideas that you can try. Even though they are intended for Vanilla JavaScript, you can make the projects using any UI framework or library. You can access the project list here.

What If a Project Becomes Too Hard?

That could be discouraging, but don’t worry. Just make the project simpler! You can go back to it later.

In this case, practising programming is like working out. If you go to the gym for the first time, you start lifting small weights. Little by little, you’ll become stronger and you can increase the weights.

If you’re starting out, start doing small things. If you are consistent, these simple projects will become easier over time, and that’s the time to increase the difficulty a bit.