This repository contains a collection of JavaScript projects that cover basic to advanced concepts and applications. You can use these projects to learn new skills, practice your existing knowledge, or showcase your portfolio.
To run any of the projects in this repository, you will need the following:
- A web browser that supports JavaScript, such as [Chrome], [Firefox], or [Edge].
- A code editor, such as [Visual Studio Code], [Atom], or [Sublime Text].
- A basic understanding of HTML, CSS, and JavaScript.
To run a project, simply open the index.html
file in your browser and enjoy!
This repository contains the following projects, organized by difficulty level:
These projects are suitable for beginners who want to learn the fundamentals of JavaScript, such as variables, data types, operators, loops, functions, arrays, objects, etc.
- [Calculator]: A simple calculator app that can perform basic arithmetic operations.
- [Countdown Timer]: A countdown timer app that can display the remaining time for a given event.
- [Quiz App]: A quiz app that can test your knowledge on various topics.
- [To-do List]: A to-do list app that can help you manage your tasks.
- [Weather App]: A weather app that can show you the current weather and forecast for any location.
These projects are suitable for intermediate learners who want to learn more advanced concepts and features of JavaScript, such as DOM manipulation, events, APIs, promises, async/await, etc.
- [Calculator]: An improved calculator app that can perform more complex calculations and handle errors.
- [Memory Game]: A memory game app that can test your memory and concentration skills.
- [Pomodoro Timer]: A pomodoro timer app that can help you improve your productivity and focus.
- [Todo List]: An enhanced to-do list app that can store your tasks in local storage and allow you to filter, sort, and edit them.
- [Weather App]: An upgraded weather app that can use geolocation to detect your location and fetch weather data from a third-party API.
These projects are suitable for advanced learners who want to learn more challenging and modern aspects of JavaScript, such as ES6+, modules, classes, inheritance, OOP, etc.
- [Calculator]: A final calculator app that can perform scientific calculations and use a modular design pattern.
- [Chat App]: A chat app that can allow you to communicate with other users in real-time using WebSocket and Node.js.
- [E-commerce App]: An e-commerce app that can allow you to browse, search, and buy products using React and Firebase.
- [Todo List]: A ultimate to-do list app that can sync your tasks with a backend server and use a class-based OOP approach.
- [Weather App]: A supreme weather app that can display a beautiful and interactive UI using D3.js and SVG.
If you want to contribute to this repository, please follow these steps:
- Fork this repository and clone it to your local machine.
- Create a new branch with a descriptive name, such as
feature/add-new-project
orfix/bug-in-calculator
. - Make your changes and commit them with a clear and concise message, such as
Add new project: Tic-Tac-Toe
orFix bug in calculator: division by zero
. - Push your branch to your forked repository and create a pull request to the original repository.
- Wait for your pull request to be reviewed and merged.
This repository is licensed under the [MIT License]. You are free to use, modify, and distribute the code and projects in this repository, as long as you give credit to the original author and follow the terms of the license.