A personal collection of small, beginner-friendly JavaScript projects focused on learning core concepts through hands-on building.
This repository contains a set of small JavaScript projects I built to practice DOM manipulation, event handling, basic algorithms, and UI interaction. Each project is self-contained inside its own folder and includes a simple HTML/CSS/JS structure so you can open and run each project immediately.
Goal: Learn by building β develop a clean portfolio of practical mini-projects and improve JavaScript fundamentals one project at a time.
02-quiz-generator/
03-fd-calculator/
04-password-generator/
05-vowel-checker/
06-age-calculator/
07-tip-calculator/
08-to-do-list/
09-digital-clock/
10-expense-tracker/
11-poper-application/
12-ascii-unicode-detector/
13-music-player/
14-count-down-maker/
15-book-marker/
16-video-player/
api/
Each project folder typically contains:
index.htmlβ the main webpage for the projectstyles.cssorstyle.cssβ styles for the projectscript.jsβ JavaScript file containing the project logic
Click a project name to open its
index.htmlin your browser (works locally).
A small quiz app that presents multiple-choice questions, collects answers, and displays a score with feedback.
π Open Quiz Generator
π Source Code
Fixed Deposit calculator that computes maturity value given principal, rate of interest, and tenure.
π Open FD Calculator
π Source Code
A utility to generate random passwords with options for length and inclusion of uppercase, numbers, and symbols.
π Source Code
Simple tool that checks whether the entered character is a vowel or not and displays the result.
π Open Vowel Checker
π Source Code
Calculate age based on a user-provided birthdate. Demonstrates date handling and basic arithmetic in JS.
π Open Age Calculator
π Source Code
Compute tip amount and total bill based on bill value and chosen tip percentage.
π Open Tip Calculator
π Source Code
A simple to-do list app featuring add, remove, and persist (localStorage) functionality.
π Open To-Do List
π Source Code
A real-time digital clock built with JavaScript that updates every second.
π Open Digital Clock
π Source Code
Basic expense tracker that allows adding expenses and viewing totals; a foundation for a more advanced finance app.
π Open Expense Tracker
π Source Code
A small UI utility demonstrating popover behavior using JavaScript event handling and DOM manipulation.
π Source Code
Tool to detect and display ASCII or Unicode values for user-entered characters.
π Open ASCII / Unicode Detector
π Source Code
A browser-based music player featuring playlist control, play/pause functionality, and audio handling using the HTML5 Audio API.
π Open Music Player
π Source Code
A countdown timer that calculates remaining time until a selected future date.
π Open Countdown Maker
π Source Code
A simple bookmark manager that allows saving, listing, and persisting website links using localStorage.
π Source Code
A custom video player with JavaScript-based controls demonstrating media event handling.
π Open Video Player
π [Source Code(./16-video-player/index.html)
Demonstrates the Picture-in-Picture Web API using video elements.
π Source Code
Demonstrates a desktop-based drag-and-drop Kanban board with editable items and local storage support.
π Source Code
Demonstrates Extracting Youtube Image From Youtube Video .
π Source Code
Projects that demonstrate working with external APIs using Fetch API and async JavaScript.
A dictionary application that fetches word meanings from an external API and displays definitions dynamically.
π Open Dictionary App
π Source Code
Generates and displays random quotes fetched from a public API.
π Open Quote Generator
π Source Code
Fetches jokes from an external API and displays them dynamically.
π Open Joke Teller
π Source Code
Search for images using an external image API and display results dynamically.
π Open Image Search
π Source Code
Implements infinite scrolling by loading new content dynamically as the user scrolls.
π Open Infinity Scroll
π Source Code
- Clone this repository:
git clone <your-repo-url>
cd <repo-folder>
```
2. Open any project in your browser by double-clicking the `index.html` file or serve the repo using a simple static server (recommended for consistent behavior):
```bash
# using Python 3
python -m http.server 8000
# then open http://localhost:8000/02-quiz-generator/
```
3. Modify HTML/CSS/JS files to experiment and learn.
---
## β
Contributing
Contributions and improvements are welcome! A few suggestions:
* Add comments and documentation to JavaScript files for readability.
* Improve styling and responsive behavior in CSS.
* Add tests or validation where appropriate (e.g., input validation for calculators).
* Create new mini-projects and follow the same folder structure.
If you'd like to contribute, open a PR describing the change.
---
## π Notes & TODO
* Standardize naming of `styles.css` vs `style.css` across projects.
* Add README files inside complex project folders to describe specific features and usage.
* Add small screenshots or GIF demos for each project in `assets/`.
---
## π¬ Contact
**Georgekutty Jose**
Email: [georgekuttyjose84@gmail.com](mailto:georgekuttyjose84@gmail.com)
GitHub: [https://github.com/georgekuttyjose84](https://github.com/georgekuttyjose84)
---
## π License
This repository is available under the **MIT License**. See `LICENSE` for details.
---
*Happy coding β build, break, fix, repeat!*