8 JavaScript project ideas to take you from newbie to expert
Tags: javascript, webdev, beginners
Published: 2020-06-19 21:36:00

![8 projects](https://drive.google.com/uc?id=1CT4ZBm50E8z8xS5f7YPYlyZb2xLf-NOX)

You might be aiming to create a successful, popular, and original OSS library -- but u might be robbing yourself of the opportunity to have fun and learn from something less ambitious, but still worthwhile. 

Here are some project ideas in JS that might get you from newbie to expert



### Beginner

#### Todo App (Suggested implementation : web-app)

We all have tasks that need to be completed. Remembering all of them can prove to be really hard sometimes. Build a web app that contains your todo list. It should have the functionality to add new goals / todo's, delete or update existing goals / todo's.

__Bonus :__ 

- Integrate consistent storage instead of in-memory storage.  
-  Add sort functionality for your goals / todo's.

#### Simple Calculator (Suggested implementation : web-app, CLI)

Simple calculations is something we can't seem to avoid in our lives. Build a tool that will handle simple arithmetic and returns the answer or display it if you choose the web implementation.

__Bonus :__

- Show previous calculations.

#### Countdown (Suggested implementation : web-app)

Timing ourselves is something that can be tricky. Build a tool that takes input in this case time in either hours, minutes or even seconds :open_mouth:!! It should then start counting down from that moment.

__Bonus :__

- Add different countdowns with titles and maybe descriptions.



### Intermediate

#### Quiz App (Suggested implementation : web-app)

We all want to sharpen our brains right? One way of doing this is by taking a quiz regularly. Create an interface that has questions and their multiple choices. If the user submits the answers, it analyzes them then shows the score and the correct answers.

__Bonus :__

- Add different levels.
- Add a pass mark for each level in order to advance to the next level.

#### Expense Tracker (Suggested implementation : web-app, mobile)

Tracking expenses is a tough task especially with everything else that revolves around us. Create an app or web interface that will take your earnings be it daily, weekly, monthly or any other frequency that you may choose. You should also be able to input your expenditures as they occur. This should subtract your expenses from your original amount and update your balance.

__Bonus :__

+ Calculate the percentage difference between the current cycle and the previous cycle.

#### Advanced Calculator (Suggested implementation : web-app, mobile, CLI)

You might need to take your calculations to the next level, i.e. do some scientific calculations or maybe just some advanced math. You might want to build a scientific calculator that will leverage the Math module.

**Bonus :**

- Show suggestions of mostly used functions.



### Advanced

#### E-Commerce (Suggested implementation : web-app, mobile)

Businesses are moving to the online space to sell their products. Build an app - mobile or web. Where users will be able to view products, add them to their wish list, order and even rate the different products. You can also add an admin panel to add, delete or update products.

**Bonus :**

- Add product suggestions to users based on the products they order.
- Add a coupon reward system for frequent customers.

#### Text Editor (Suggested implementation : web-app, mobile)

Text editing might be more of your thing. Ever thought of creating your own text editor? Here's some good news; you can totally do that. Create a block-based editor that will output the formatted text in either JSON format or HTML markup.

__Bonus :__

- Create a markdown file from the edited text.
- Add a feature to post the edited text to a blogging site of your choosing.



##### Don't forget to share your project!
Please use the comments section on this article as a favourable circumstance to get some love for your project. Please share a link to what you're working on and tell us :
- What has been your biggest challenge while working on the project?
- What thing/s that you've learnt working on the project?
- What tips would you give to someone else starting a similar project?