Skip to content

kartikbhardwaj2003/advanced-dom-javascript-assignment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 

Repository files navigation

Advanced DOM & JavaScript Assignment

🎯 Learning Objectives

By completing this assignment, you will demonstrate your ability to:

Handle form submissions and real-time validation using vanilla DOM

Implement event delegation for dynamic elements

Use localStorage for persistence across refreshes

Apply debouncing for performance optimization

Build interactive web apps using DOM manipulation

Understand challenges of vanilla JavaScript development

πŸ“‚ Project Structure

advanced-dom-javascript-assignment/

β”œβ”€β”€ contact-form/

β”‚ β”œβ”€β”€ index.html

β”‚ β”œβ”€β”€ style.css

β”‚ └── script.js

β”œβ”€β”€ todo-app/

β”‚ β”œβ”€β”€ index.html

β”‚ β”œβ”€β”€ style.css

β”‚ └── script.js

└── README.md

πŸ“ Assignment Tasks

βœ… Question 1: Smart Contact Form

Features:

Real-time + debounced validation (300ms delay)

Form submission without page reload

Success + error messages

Message history stored in localStorage

Event delegation for delete buttons

Empty state handling (β€œNo messages yet”)

βœ… Question 2: Dynamic Todo List with Search

Features:

Add, delete, and toggle todos

Mark todos as complete/incomplete

Todo counter (total & completed)

localStorage persistence

Debounced search (400ms) with filters: All | Active | Completed

No results / empty state messages

βš™οΈ Technical Requirements

addEventListener for all DOM interactions

Debouncing for validation & search

Event delegation for delete/toggle actions

Todos & messages stored as JSON in localStorage

Graceful error handling

πŸš€ Setup & Run

Clone repository:

git clone https://github.com/\ksrtikbhardwaj2003/advanced-dom-javascript-assignment

cd advanced-dom-javascript-assignment

Open in browser:

contact-form/index.html β†’ Smart Contact Form

todo-app/index.html β†’ Dynamic Todo App

"# kartikbhardwaj2003-advanced-dom-javascript-assignment"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published