TaskTimer is a brower based app that allows the user to add and set specific minutes for each task. This also includes task title and description. Task will only be mark done after the finishing the timer.
Live Demo ← Click the link to monitor your task
- HTML
- CSS
- JavaScript
- Add task with title, description and set specific timer in minutes
- Automatically add date on added task
- Timer for each task after clicking the start button
- Task can be deleted
- Automatically mark task done after the timer
- Add task by filling up the add task form
- Add task title, description and duration in minute
- Click add to add the task in the list
- Click start to start the timer or click delete to delete the task immediately
- Wait for the timer to finish
- You can pause and resume the task timer
- Even you close timer pop up, the timer will still continue to run
- Once done, the task will be mark as done
- Click done to permanently remove the task from the list
- Check task done list for the task that are done
- Congratualitions you accomplish a task
- Clone the repository
git clone https://github.com/cedrexpelagio/TaskTimer.git- Navigate to the project folder
cd TaskTimer- Open
index.htmlin your browser (double-click it, or right-click → Open With → your browser)
- Persistent storage – save tasks with localStorage so they survive a page refresh
- Edit task – allow editing title, description, or duration after a task is added
- Sound/browser notification – alert the user when a timer finishes, even if the tab isn't active
- Progress bar / visual countdown – show a circular or linear progress indicator, not just numbers
- Search/filter/sort – by date, duration, or status
- Drag-and-drop reordering – let users rearrange tasks in the list
I started by brainstorming the branding for my simple system. The theme is inspired by Claude's UI design, from font to color. Next, I structured it in HTML and CSS. For this project, I started with the mobile screen size.
Then, I added the JavaScript logic. First, I created simple add and delete functionality. Next, I researched how to add a timer feature to my project. This was the most challenging part of my journey — I had to consult AI chatbots to understand the logic. I also structured and styled the timer popup. Lastly, I added media queries for tablet and laptop screen sizes.
In this project, I learned a lot about responsive UI design and JavaScript logic. In CSS, I learned how to work with a mobile-first approach, which helped me style for tablet and laptop screens. Then, in JavaScript, I improved my knowledge of DOM manipulation and events, since I had already experimented with these concepts in my Rock-Paper-Scissors website. I also learned how to use the setInterval function to create a timer. This project taught me how to use my current knowledge of CSS and JavaScript to build a functioning, responsive website.
