DEV Community

loading...
Cover image for 40+ JavaScript Projects For Your Portfolio [With Videos!]

Javascript Projects 40+ JavaScript Projects For Your Portfolio [With Videos!]

simonholdorf profile image Simon Holdorf Originally published at thesmartcoder.dev Updated on ・10 min read

This story was originally published on The Smart Coder.

Let’s be honest right from the start. No matter how many books about programming you read, videos you watch, or podcasts you listen to, if you want to become a better developer, you have to practice continuously.

In the front-end space, a lot of frameworks exist: React, Angular, Vue, just to name a few. Every single one of them is awesome and without them, front-end development wouldn’t be in its current state. But what those frameworks, besides all their differences, have in common is that they are all based on JavaScript. Yep, good ol’ JS!

JavaScript is what runs the web today, no doubt. And for every front end developer, no matter if already experienced or at the start of their careers, it’s mandatory to know the basics of JavaScript, HTML, and CSS.

Frameworks come and go, but JavaScript will stay! But what's the best way to practice JavaScript? The best answer I can give you is to build projects!

JavaScript Projects

JavaScript projects are guided tutorials or javascript project ideas that help you sharpen your skills by building real applications, websites, games, components, etc. Sometimes you will find project ideas that just contain a title and a few sentences of what you should build.

Example: Build a counter with JavaScript that counts down the hours till the end of the year.

This format is good if you already have some experience and are just looking for some input.

JavaScript Projects for Beginners

However, if you are new to web development, it's often better if you look for JavaScript project examples with source code or specific JavaScript projects for beginners. These often contain a running demo application, a GitHub repository with the source code, and a step-by-step guide on how to build the project.

JavaScript Practice Projects

So for you to gain practice, I have listed nine awesome javascript project ideas that you can do to refresh your skills, learn new things about JS, and stay relevant in the future. All of them are based on pure JavaScript, some HTML, and some CSS. You can add them to your portfolio, show them to recruiters or potential employers, or keep them in your GitHub as references for future work. To be clear: This is not meant to teach you everything about JavaScript. There are perfect courses for you covering JS from A-Z. This is for building things. Getting your hands dirty. Working on your muscle memory.

JavaScript Projects Overview

To give you a headstart, I have rated those tutorial projects for you. But that’s only my opinion, so I highly recommend that you try them out for yourself because you know how to learn best and on what level you currently are.


1. Build a Meditation App JavaScript Project

What you will build

You are going to build an application that provides ambient sound for meditation. Users can choose between different timers and sounds.

Rating

This tutorial makes use of Vanilla JavaScript, precisely what we’re aiming for. The instructor’s voice, as well as his instructions, are clear and good to understand. Furthermore, you will learn how to manipulate sound and video with JS. This is a fun javascript project that I really enjoy.

5/5 Stars


2. Build a Virtual Keyboard JavaScript Project

What you will build

You are going to build a virtual keyboard from scratch with Vanilla JS, HTML, and CSS that can be used in the browser and will be responsive and touch-ready!

Rating

I like the originality of this project, it's a great javascript project idea. I haven’t created a virtual keyboard before so doing this with just JavaScript, HTML, and CSS was really a great experience for me. The instructor's voice is clear and he explains things pretty well.

5/5 Stars


3. Build an eCommerce Shopping Cart JavaScript Project

What you will build

You are going to build a shopping cart that can be used on online shops and eCommerce sites with Vanilla JS, HTML, and CSS. The instructor makes use of Contentful, which is a headless CMS for storing product information. Learning how to deal with Contentful or a headless CMS, in general, is not the primary focus of this piece, but it’s a great service, so you won’t regret seeing it in action.

Rating

The recording of this tutorial is really long. On the one hand, that’s impressive but on the other hand also a bit laborious. The voice of the instructor is clear and good to understand. It’s sometimes a bit hard to follow him, but that’s probably because of the complexity of this project. So this is rather an intermediate js project.

4/5 Stars


4. Build a Weather App JavaScript Project

What you will build

This project is going to teach you how to build a weather application with Vanilla JS, HTML, and CSS. The instructor uses the Dark Sky API for fetching weather information, which is a great opportunity for you to learn how to interact with APIs, another great thing you can do with javascript.

Rating

This might be a good fit for your portfolio. If you already did project 1., you already know the instructor, and I can tell you he delivers high quality again. It seems like he really knows how to teach in an understandable and entertaining way.

5/5 Stars


5. Build an Issue Tracker JavaScript Project

What you will build

In this tutorial, you’re going to build an issue tracker that can be used on any website for creating issues (for example with software products) with Vanilla JS, HTML, and CSS. This can also be a good addition to your portfolio and an excellent javascript project for beginners!

Rating

The instructor has a clear concept of what he wants to build with you. His voice is clear and good to understand, and this project is a javascript beginner project.

4/5 Stars


6. Build a PIN Pad JavaScript Project

What you will build

In this javascript project, you are going to build a PIN Pad that runs in the browser and has the functionality to check PIN codes for their correctness. The instructor uses only Vanilla JS, HTML, and CSS for this tutorial. This is really an awesome javascript project idea for beginners so you definitely want to check it out!

Rating

I find it a very creative tutorial project to show you what Vanilla JavaScript is capable of. The instructor does a good job of explaining everything clearly and in an easy-to-follow way. This is a cool javascript project and I had a lot of fun doing it.

4/5 Stars


7. Build a Landing Page JavaScript Project

What you will build

Brad is going to show you how to build an interactive landing page that shows the time and the user’s name. The application uses local storage to store the name, so it’s nice for you to observe this.

Rating

Brad is well known for his complete and outstanding tutorials. This one is rather short and I would say simplistic but uses just JavaScript, HTML, and CSS and therefore is an excellent javascript practice project for beginners.

4/5 Stars


8. Build a Rock Paper Scissors Game JavaScript Project

What you will build

Building games can be a fun way to learn new things. JavaScript offers great possibilities to create browser-based games. In this tutorial project, you’re going to make the classic rock paper scissors game with JavaScript.

Rating

Like in Project 1., the instructor does a good job with this tutorial. He’s entertaining and one can follow him well. And again, this project is based on Vanilla JavaScript and a good javascript project for beginners!

4/5 Stars


9. Build a Tic Tac Toe Game JavaScript Project

What you will build

In this project, you’re going to build a tic tac toe game which is a fun, but also complex, exercise because it uses basic AI and algorithms. But apart from that, everything is made with just Vanilla JS, HTML, and CSS.

Rating

This project has a good size, a clear structure, and is fun to build. The instructor’s voice is clear and it’s easy to follow him. The explanations are really good, and you should feel pretty good in the end.

5/5 Stars


Bonus: Build 9-in-1 Mini JavaScript Projects

What you will build

This is a little bonus I wanted to present to you: one single recording that contains nine small, independent javascript projects for you to practice your JavaScript, HTML, and CSS skills on. Maybe you can use some of those snippets for your own site?

Rating

I like the idea of having multiple small snippets in one recording. The instructor’s voice could be more clear, and sometimes it’s a bit hard to follow him.

3/5 Stars


More JavaScript Project Ideas

These are without a doubt some great projects to follow along with. If you want to create something on your own without following a step-by-step tutorial, I have some more ideas for javascript projects that you can build:

JavaScript Beginner Projects

  1. Database App with JavaScript
    Task: Create a simple app that uses the IndexedDB of modern browsers for storing data.

  2. JSON to CSV Converter with JavaScript
    Task: Build a simple app where users can either paste a JSON string or upload a JSON file. The app should convert the input into CSV and display it to the user.

  3. Countdown Timer with JavaScript
    Task: Build a simple feature where users can enter a number of seconds and the feature starts a countdown.

  4. Quiz App with JavaScript
    Task: Build a simple quiz app where users can checkboxes for the right solutions.

  5. Stopwatch App with JavaScript
    Task: Build a simple stopwatch feature where users can start and stop a timer.

  6. Notes App with JavaScript
    Task: Create an app where users can take and manage notes.

  7. Dollars to Cents Converter with JavaScript
    Task: Users should be able to enter a number of dollars and the app presents them with the value in cents.

  8. Pomodoro Clock with JavaScript
    Task: Build an app where users can create work timers (25min), break timers (5min), and features to start/stop/reset these timers.

  9. Recipe App with JavaScript
    Task: Create an app where users can find recipes for different categories. Bonus: Integrate a recipe API.

  10. Lorem Ipsum Generator with JavaScript
    Task: Create an app or component that generates Lorem Ipsum text according to the length the user wants.

JavaScript Intermediate Projects

  1. Currency Converter with JavaScript
    Task: Build an app to convert one currency into another.

  2. Drawing App with JavaScript
    Task: Users should be able to draw simple forms and paintings in their browser window.

  3. Emoji App with JavaScript
    Task: Build an app where users can search for emojis and copy them into the clipboard.

  4. Meme Generator with JavaScript
    Task: Build an app where users can upload images, add text to them, and save & download them.

  5. Password Generator with JavaScript
    Task: Users should be able to create random passwords with different rule sets like length, difficulty, characters, etc.

  6. Image Scanner with JavaScript
    Task: Build an app that reads and visualizes metadata of uploaded images.

  7. To-Do App with JavaScript
    Task: Create an app for managing to-dos.

  8. Voting App with JavaScript
    Task: Create an app where users can create polls for others to vote on.

  9. Flashcards App with JavaScript
    Task: Build an app where users can create flashcards for others to learn new things.

  10. Book Finder App with JavaScript
    Task: Create an app where users can search for books with different criteria like the author, year, content, recommendations, etc. Bonus: Integrate a books API.

JavaScript Advanced Projects

  1. Movie App with JavaScript
    Task: Users should be able to browse movies, see ratings, find actors, get recommendations. Bonus: Integrate a movie API.

  2. Survey App with JavaScript
    Task: Users should be able to create surveys for others that can then take them.

  3. Chat App with JavaScript
    Task: User should be able to chat with each other in real-time.

  4. Instagram Clone with JavaScript
    Task: Users should be able to experience similar features that Instagram has. For example Image upload, tagging, likes, etc.

  5. Twitter Clone with JavaScript
    Task: Users should be able to experience similar features that Twitter has. For example Image upload, tagging, likes, etc.

  6. Pinterest Clone with JavaScript
    Task: Users should be able to experience similar features that Pinterest has. For example Image upload, collections, likes, etc.

  7. Stock-Trading App with JavaScript
    Task: Users should be able to watch charts and buy stocks (can be simulated of course). Bonus: Integrate a stock API.

  8. Analytics App with JavaScript
    Task: Create an app to track user behavior on a website, such as visits, bounce rate, etc.

  9. Video App with JavaScript
    Task: Create an app where users can upload and watch videos.

  10. File Sharing App with JavaScript
    Task: The user should be able to upload files with or without registration.

A good idea would be that you document it when you build a project and share that with the community!


Alright, that’s it for now. And I am pretty sure you cannot wait to get started with those great tutorials. But let me tell you one more thing. Watching the videos and coding along is a good way to learn things and get practice. However, you’ll get the most out of them if you add your own flavors to the projects — enhance them, change them, combine them, improve them. Or even better: Make your own project and document the making. You’ll learn a lot and others will be thankful for it!

Also, don't forget to follow me here and on Twitter for more upcoming posts!

Discussion

pic
Editor guide
Collapse
andyoverlord profile image
Andy Zhu

Thank you for sharing, I will bookmark it to practise in my own time.

Collapse
simonholdorf profile image
Collapse
ad0791 profile image
Collapse
simonholdorf profile image
Simon Holdorf Author

Sure thing buddy!

Collapse
nothinbutblood profile image
Sriram

Great work I'm sriram fullstack javascript developer I have a whatsapp group dedicated to coders so that you can chat and collaborate on fun hobby projects with real people if you are interested please ping me at +918970787208

Collapse
akiwams profile image
Alhassan Kiwamdeen

Update your bio and profile picture and I will ping you. Thanks.

Collapse
codenewbie95 profile image
`${__hello__os__}🧘‍♀️`

Thanks for this post. This looks amazing... dang...

Collapse
yogeekabhi profile image
Abhishek Sunam

It was soo needed for me since I just completed learning JS, can't wait to get my hands dirty, thanks for the awesome resources.

Collapse
mimianaman profile image
mimianaman

This is awesome, thanks for sharing.

Collapse
simonholdorf profile image
Simon Holdorf Author

I am afraid not, have a look at Zenva Academy, for example, I recall them having what you are looking for

Collapse
peterkulik profile image
peterkulik

What's about XSS? I just looked into the issuetracker video and the whole html is concatenated as a string into innerhtml. I have also seen this technic in some other video too...
Most of js frameworks solves this problem.

Collapse
majse14 profile image
Majse14

This is so cool! thanks!

Collapse
luigivampa profile image
Cory Trevorson

Thanks, that's interesting stuff 😎

Collapse
shadabbi profile image
shadabbi

Awesome it's very helpful I'm excited.

Collapse
evalcraciun profile image
Craciun Ciprian

Thanks for sharing this, indeed i need to keep my memory muscules in shape :)

Collapse
simonholdorf profile image
Simon Holdorf Author

Glad you like it :)

Collapse
stefanyvasc profile image
Stefany de Sá

Thank you for sharing!
these projects will complement my studies.

Collapse
simonholdorf profile image
Simon Holdorf Author

Glad you like it :)

Collapse
edwardleung1 profile image
Edward Leung

Thank you so much! if you have more blogs like this, please let me know :)