CSS Micro
CSS Micro
PROJECT REPORT
ON
To-Do-List Using JavaScript
SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE
AWARD OF
DIPLOMA IN
COMPUTER ENGINEERING
SUBMITTED TO
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION,
MUMBAI
SUBMITTED BY
Name of Student Roll Number Enrollment No
1|Page
CERTIFICATE
This is to certify that the project report entitled “To-Do-List Using
JavaScript” was successfully completed by Student of fifth semester
Diploma in Computer engineering.
Name of Student:
1] Tambe Anushka Santosh
Prof. Miss. Gaykar R.H Prof. Nawale S.K Prof. Kapile A.S
2|Page
Acknowledgement
This project is done as a semester project, as a part course titled
“To-Do-List Using JavaScript”.
I am really thankful to our course the Principal Prof. Kapile A.S. and
the HOD Prof. Nawale S.K. Samarth Polytechnic, Belhe for his invaluable
guidance and assistance, without which the accomplishment of the task
would have never been possible.
I also thanks Prof. Miss. Gaykar R.H. for giving this opportunity to
explore into the real world and realize the interrelation without which a
Project can never progress. In this present project I have chosen the topic
“To-Do-List Using JavaScript”.
I am also thankful to parents, friend and all staff of Computer
Engineering Department, for providing us relevant information and
necessary clarifications, and great support.
Name of Student:
1] Tambe Anushka Santosh
3|Page
ANNEXURE II
1.
2.
3.
4.
Major Learning Outcomes achieved by students by doing the project: -
………………………………………………………….………………………….……..……………
……………………………….…………………………………………………..……………………
…………………………………………………………………………..……..………….…
…………………………….…………………………………………………………………………
…………………….…………………………………………………………………………………
Roll Name of Student Marks out of 6 Marks out of 4 for Total Out
No. for performance oral / presentation of 10
in group activity
4|Page
INDEX
1.0 Introduction 8
8.0 Flowchart 20
5|Page
Micro-Project Proposal
On
To – Do – List Using JavaScript
6|Page
4.0 Action plan
7|Page
Micro Project Report
On
To – Do - List Using JavaScript
1.0 Introduction:
• A To - Do List a simple prioritized list of the tasks a person must complete. People make a
list of everything they need to do, ranked according to priority from the most critical task
at the top to the least critical task at the bottom.
• To - dos are the tasks or the atomic entities that make up a To – Do list. To - Dos are made
quickly, the bulk of them do not specify the work, instead, they are typically just
comprehensive enough to serve as a valuable indicator. To be sure, To - do terminology
like “Groceries" or "Car Wash” is frequently grammatically correct. Because the signal is
so quick, it is only useful for a short period of time while the task is remembered. In certain
cases, a simple item like a stack is enough to recall the job without the need for a note.
• There are clear immediate implications to adding a t To – Do list to a person's productivity
system. The functionalities provided by a good To - Do list application/system help
declutter the user's mind as their pending tasks are recorded safely and they won't be
forgotten.
• The To - Do list project is a user - friendly website which helps them to keep a track of
their tasks. It is a simple site which requires no sign-in/login or any personal details but still
records your task, mark the completed tasks, and stores them even if you visit the site after
a few days.
• Traditionally, they're written on a piece of paper or post it notes and acts as a memory aid.
As technology has evolved, we have been able to create a To – Do lists with excel
spreadsheets, word documents, to-do list apps, Microsoft to do and google to do list to name
a few. You can use to do list in your home and personal life, or in the workplace.
2. Increases productivity: A To - Do list allows you to prioritize the tasks that are
more important. This means you don't waste time on tasks that don't require your
immediate attention.
3. Helps with motivation: To - Do lists a great motivational tool because you can use
them to clarify your goals. You can divide your king-term goal into more achievable
short-term goals and as you tick each one off your list, your confidence will increase.
8|Page
3.0 Task Management: -
• From an articulation standpoint, task management entails more than just organizing
virtual and physical collections and scheduling activities.
• Recent research has begun to address the problem of generic task management in the
context of email. This development is hardly surprising, given that many digital device
users are overloaded by the number of chores done through email. According to this
research, any successful productivity tool must be tightly connected with email
functionalities. Recent researches looked at task management strategies more generally
because email and related technologies are unlikely to be the whole picture.
9|Page
project), Best Design selection (supported with comparison and reason) and
Implementation plan ((Flowchart/algorithm/ detailed block diagram)).
<title>To-do-list</title>
</head>
<body>
<div id='addTaskBtn'>
11 | P a g e
<input placeholder='Add Task' class='task-input'/>
<div id='pending'></div>
</body>
</html>
To-do-list-function.js :-
<!DOCTYPE html>
<html>
<head>
<title>To-do-list</title>
</head>
<body>
<div id='addTaskBtn'>
<div id='pending'></div>
12 | P a g e
</body>
</html>
To-do-list-styles.css :-
*{
font-family: -apple-system, BlinkMacSystemFont, sans-serif;
*:not(input){
-webkit-user-select: none;
}
body {
position: relative;
color: #fff;
height: 98vh;
overflow: hidden;
background-image: linear-gradient(to bottom right, #24c6dc, #514a9d);
#myday{
font-size: 2.5rem;
font-weight: 600;
margin: 0;
}
#date{
position: relative;
font-size: 1.25rem;
font-weight: 500;
margin-bottom: 10px;
margin-top: 0;
}
#done{
position: absolute;
top: 0; right: 0;
13 | P a g e
font-size: 20px;
font-weight: 500;
display: none;
#addTaskBtn{
position: relative;
width: 100%;
height: 8.5vh;
background-color: rgba(40,40,40,.9);
display: grid;
grid-template-columns: 13% 90%;
align-items: center;
font-size: 20px;
color: white;
border-radius: 10px;
.task-input{
position: relative;
width: 97%;
height: 8.5vh;
font-size: 18px;
font-weight: 450;
color: #fff;
background-color: rgba(40,40,40,0.9);
caret-color: rgba(46, 226, 229, 0.8);
padding: 0 0 0 10px;
outline: none;
border-radius: 10px;
display: none;
text-indent: 4px;
}
#plus{
justify-self: center;
position: relative;
top: 0.5vh;
font-size: 10px;
14 | P a g e
font-weight: 200;
}
#txt{
position: relative;
top: 5px;
}
#pending{
position: fixed;
height: 73vh; width: 95%;
margin-top: 4px;
overflow: hidden auto;
#pending::-webkit-scrollbar{
display: none;
}
.taskContainer{
position: relative;
width: 100%; height: auto;
display: grid;
grid-template-columns: 10% 80% 10%;
grid-auto-rows: max-content;;
.task{
grid-row: span 2;
word-wrap: break-word;
padding: 10px;
margin-bottom: 5px;
background-color: rgba(60, 60, 60, 0.9);
border-radius: 0 0 20px 20px;
}
.completed{
display: flex;
position: relative;
width: 25px; height: 25px;
15 | P a g e
border: 1px solid black;
align-self: center;
justify-self: center;
border-radius: 50%;
.remove{
position: relative;
border-radius: 50%;
left: 1vw;
.del{
position: relative;
font-size: 8px;
top: -8px;
.suffix{
position: relative;
bottom: -2px;
font-family: sans-serif;
color: #d4be16;
font-size: 10px;
letter-spacing: 2px;
}
.checkmark__circle {
stroke-dasharray: 166;
stroke-dashoffset: 166;
stroke-width: 2;
stroke-miterlimit: 10;
stroke: #7ac142;
fill: none;
animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
.checkmark {
top: -0.5vh;
16 | P a g e
position: absolute;
border-radius: 50%;
stroke-width: 2;
stroke: #fff;
stroke-miterlimit: 10;
margin: 10% auto;
box-shadow: inset 0px 0px 0px #7ac142;
animation: fill .4s ease-in-out forwards, scale .3s ease-in-out .9s both;
}
.checkmark__check {
transform-origin: 50% 50%;
stroke-dasharray: 48;
stroke-dashoffset: 48;
animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.3s forwards;
}
@keyframes stroke {
100% {
stroke-dashoffset: 0;
}
}
@keyframes scale {
0%, 100% {
transform: none;
}
50% {
transform: scale3d(1.1, 1.1, 1);
}
}
@keyframes fill {
100% {
box-shadow: inset 0px 0px 0px 30px #7ac142;
}
}
17 | P a g e
6.0 Output of Code: -
18 | P a g e
7.0 Algorithm Overview: -
2. Adding a Task:
• Input Handling:
➢ Check if the input field is not empty. If it is, do nothing.
Create Task Elements:
➢ Create a container for the task.
➢ Create a task element displaying the task text.
➢ Create a "Completed" button that allows the user to mark the task as completed.
➢ Create a "Remove" button that allows the user to delete the task.
• Add Event Listeners:
➢ Attach a click event to the "Completed" button to toggle the completed state of the
task.
➢ Attach a click event to the "Remove" button to delete the task from the list.
• Append to DOM:
➢ Add the task container to the pending tasks section.
• Clear Input:
➢ Clear the input field for new tasks.
• When the "Completed" button is clicked, toggle a CSS class (e.g., completed) on the
task element. This could change its appearance (like crossing it out or changing its
color).
4. Removing a Task:
• When the "Remove" button is clicked, remove the task container from the DOM.
5. Display Tasks:
• All tasks will be displayed dynamically in the pending section of the HTML, allowing
users to see their tasks and their completion status.
1. initializeApp():
3. toggleTaskCompletion(task):
4. removeTask(taskContainer):
• Removes the specific task from the UI when the user decides to delete it.
8.0 Flowchart: -
Start
Is Input Empty?
Yes No
20 | P a g e
Create Task Element with "Complete" &
"Remove"
Task Management
End
21 | P a g e
9.0 Skill Developed: -
1. Java Script Programming Skills.
2. Communication skills
3. Teamwork
4. Creativity
5. IT skills
10.0 Conclusion: -
- It was a great experience to design and implement the "Registration System" using
JavaScript and to work on its documentation. While working on this project, I have learned
many things especially how to apply the concepts of JavaScript in modeling of real world
systems.
- This assignment helped me to get the better understanding to develop new components and
organize them such that they will model real world systems within computers. It also helped
me in getting the better understanding of Form and HTML Components of JavaScript.
- In this project, I have learned the basic concepts of HTML. I have learned to provide
validations throughout the system for avoiding logical errors, used excellent logic related
comments with proper indentation and the JavaScript concept in an excellent manner. For
any project to become successful there must be Discipline, Hard work, Time Management,
Dedication and Interest. I have followed all the aspects to make my project successful.
- After doing this project, I am in position to explain JavaScript concepts and apply them to
the modeling of real-world systems by utilizing its offered facilities. This will definitely help
me in our society to apply the concepts of JavaScript in our real life to make work in easier
manner.
10.0 References: -
1. Prof. Miss. Gaykar R.H.
2. Client Side Scripting Textbook
3. www.w3schools.com
4. http://javapoint.com
5. www.studytonight.com
22 | P a g e
23 | P a g e