Back to Projects

JS To-Do List

A simple to-do list web application built with HTML, CSS, and JavaScript for managing tasks with dark mode and localStorage persistence.

2023

Duration

Jul 2023

Team Size

1 people

Technologies

3+ tech

JS To-Do List

Project Overview

A simple yet functional to-do list web application developed with pure HTML, CSS, and JavaScript. Users can add, edit, delete, and mark tasks as complete. The app features a responsive design optimized for both desktop and mobile, along with a dark mode for comfortable night-time use. All tasks are persisted to localStorage so they survive page refreshes.

Features

  • Add, edit, and delete tasks for efficient task management
  • Mark tasks as complete to track progress
  • Responsive design optimized for desktop and mobile devices
  • Dark mode for reduced eye strain during night-time use
  • localStorage persistence — tasks survive page refreshes without a backend

Challenges

  • Designing a minimal UI that stays usable on both desktop and mobile
  • Implementing a clean dark mode toggle without a CSS framework
  • Syncing task state reliably to localStorage on every mutation

Solution

Used CSS custom properties for theming — a single class toggle on the root element swaps the entire color scheme. The task array is the single source of truth, serialized to JSON and synced to localStorage on every change.

Architecture

Single-page vanilla JavaScript app. DOM manipulation handles all UI updates. A task array is the single source of truth, serialized to localStorage on every mutation. CSS custom properties power the dark/light theme toggle.

Results & Impact

  • Live demo instantly accessible via GitHub Pages
  • Tasks persist across sessions with zero backend infrastructure
  • Dark mode and responsive layout work seamlessly across all devices
Technologies

Frontend

HTMLCSSJavaScript

Backend

Database

localStorage

Tools

GitGitHub Pages
Team
  • Ismail ZAHIR
License
MIT

Free to use, modify, and distribute with attribution.

Project Tags
HTMLCSSJavaScript

More Projects

NexoWorld
2024
An AR mobile game where players explore real-world locations to earn in-app currency and complete challenges — built on a Spring Boot microservices backend with real-time location sync.
Spring BootFlutterMongoDB+5
Kolchi.ma
2024
A full-featured Moroccan e-commerce and repair marketplace connecting buyers, sellers, and service providers on a polyglot microservices platform with real-time messaging.
DotNet CoreSpring BootNestJS+6