0% found this document useful (0 votes)
2 views18 pages

Pip Report

The document is a mini project report on a 'To-Do List Manager' application developed using Python by students of Sapthagiri NPS University. It outlines the project's objectives, features, and implementation details, emphasizing task management and user interface design. The report also discusses the project's outcomes, challenges faced, and potential for future enhancements.

Uploaded by

varshithagm1215
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views18 pages

Pip Report

The document is a mini project report on a 'To-Do List Manager' application developed using Python by students of Sapthagiri NPS University. It outlines the project's objectives, features, and implementation details, emphasizing task management and user interface design. The report also discusses the project's outcomes, challenges faced, and potential for future enhancements.

Uploaded by

varshithagm1215
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 18

SAPTHAGIRI NPS UNIVERSITY

#14/5, Chikkasandra, Hesaraghatta Main Road, Bengaluru-560057

Mini Project Report on


“To-Do List Manager using Python”
Project carried out by
Name SRN
Sharvesh Raj 24SUUBEADS129
Shoaib Ali 24SUUBEADS133
Sidvin P Shetty 24SUUBEADS138
Surya Kumar S K 24SUUBEADS148
Syed Qizar ul Haq 24SUUBEADS151
Under the supervision of
Dr. Sapna kumari C
Associate professor
Department Artificial Intelligence and Data Science

SCHOOL OF ARTIFICIAL INTELLIGENCE AND DATA SCIENCE


SAPTHGIRI NPS UNIVERSITY BENGALURU
2024-25 (EVEN SEM)
To-Do List Manager using Python

DEPARTMENT OF ARTIFICIAL INTELLIGENCE AND DATA


SCIENCE
SAPTAGIRI NPS UNIVERSITY

CERTIFICATE
This is to certify that the Mini Project Report entitled “To-Do List Manager using
Python”submitted by Sharvesh Raj (24SUUBEADS129) , Shoaib Ali
(24SUUBEADS133) Sidvin P Shetty (24SUUBEADS138) , Surya Kumar S K
(24SUUBEADS148) ,Syed Qizar ul Haq (24SUUBEADS148) of CSE - AIDS
Sapthagiri NPS University, in partial fulfilment of the requirements for the completion
of the Mini Project in the II Sem is a bona fide record of work carried out under our
supervision.

Signature of Director
Signature of Guide

(Dr. Praveen Kumar K. V)


(Dr . Sapna Kumari . C)

CSE (AIDS) 2
To-Do List Manager using Python

ABSTRACT
The To-Do List Mini Project is a lightweight, user-friendly task management application
developed to assist users in organizing and prioritizing their daily activities. This project
emphasizes the importance of task tracking and time management in both academic and
professional environments. It allows users to add tasks, mark them as completed, update
their details, and delete them as necessary — implementing the fundamental CRUD
(Create, Read, Update, Delete) operations.

The application is developed using Python showcasing the integration of front-end and
back-end technologies in a real-world context. It utilizes a clean and intuitive graphical
user interface (GUI), making it easy for users to interact with the system and manage
tasks with minimal effort.

Key features include:

 Task creation with optional due dates or priority labels


 Visual distinction for completed vs. pending tasks
 Real-time task updates and responsive design
 Data persistence through local storage or database

From an educational perspective, this mini project helps in understanding core


programming concepts such as event handling, data structures (like arrays or lists),
conditional rendering, and modular code architecture.

This project demonstrates how even a simple application can contribute significantly to
improving everyday productivity while offering a valuable learning experience in
software development.

CSE (AIDS) 3
To-Do List Manager using Python

TABLE OF CONTENTS

Contents
1: Introduction.....................................................................................................................5
2: Hardware and Software Requirements............................................................................6
3:Design and Implementation……………………………………………………………..7

4. Code…………………………………………………………………………………….9

5: Results and Discussion..................................................................................................12


6: Screenshots....................................................................................................................14
7: Conclusion.....................................................................................................................17
8: References.....................................................................................................................18

CSE (AIDS) 4
To-Do List Manager using Python

1: Introduction

In today’s fast-paced world, effective task management has become essential for
individuals to stay organized, meet deadlines, and improve productivity. Whether it is a
student managing assignments, a professional tracking work deliverables, or a
homemaker planning daily chores, having a reliable tool to keep track of tasks can
significantly reduce stress and improve time efficiency. The To-Do List Mini Project
aims to address this need by providing a simple, interactive, and functional platform for
managing personal tasks.

This project is a basic implementation of a task management system where users can
create a list of tasks they intend to complete. The system allows users to add new tasks,
update existing ones, mark tasks as completed, and delete tasks when no longer needed.
These operations are often referred to as CRUD operations — Create, Read, Update, and
Delete — which form the foundation of most modern applications.

The primary objective of this project is to offer hands-on experience with essential
programming concepts and tools. It focuses on:

 User Interface Design – Creating a clean and intuitive layout that enhances user
experience
 Data Handling – Storing and manipulating tasks in a structured format
 Functional Programming – Implementing core logic to manage tasks
dynamically
 Interactivity – Responding to user inputs in real-time

Depending on the chosen technology stack, the application may also include features like
local storage (for offline use), database integration (for persistent data), or responsive
design (for mobile compatibility).

Overall, the To-Do List Mini Project is a practical and educational exercise that
introduces the basics of software development while solving a common real-life problem.

CSE (AIDS) 5
To-Do List Manager using Python

2: Hardware and Software Requirements

Hardware Requirements
Component Minimum Requirement
Processor (CPU) Intel Pentium i3 or equivalent and above
RAM 2 GB (4 GB or more recommended)
Hard Disk 500 MB free space
Monitor Standard display (1024×768 resolution or higher)
Input Devices Keyboard and Mouse
Optional Smartphone (for testing mobile apps)

Software Requirements
Category Requirement (Choose based on your stack)
Operating System Windows / macOS / Linux / Android
Programming Language Python
Frameworks React.js / Angular / Vue.js (optional for advanced UI)
Back-End Tools Python
Database SQLite / Firebase / Local Storage / MySQL (if needed)
IDE / Editor VS Code / PyCharm / Android Studio / IntelliJ IDEA
Browser Chrome, Firefox, Edge (for web testing)

CSE (AIDS) 6
To-Do List Manager using Python

3:Design and Implementation

Data Flow Design:

 Input from the user is captured and stored in a temporary array or list (or in a
database if using a backend).

 The task list is re-rendered each time the data is modified.

 Actions like "complete", "edit", or "delete" trigger updates to the task data and re-
display the list.

Phase 1: Setting up the Environment

 Chose Python based on project scope

 Set up a basic file structure and initialized the project workspace

Phase 2: Adding Core Functionality

 Implemented task creation and display logic

 Enabled users to mark tasks as complete (e.g., strike-through or checkbox)

 Added delete functionality to remove unwanted tasks

 Included optional features such as editing tasks and adding due dates or priorities

Phase 3: Data Storage (optional)

 Used browser LocalStorage / JSON file / SQLite / Firebase to store task data
persistently

 Ensured tasks remain after page reload or app restart

CSE (AIDS) 7
To-Do List Manager using Python

Phase 4: Testing and Debugging

 Manually tested all functions to ensure proper functionality

 Handled edge cases such as empty input, long text, or duplicate tasks

Phase 5: Optimization and Final Touches

 Cleaned and commented code

 Improved UI (e.g., animations, transitions, color themes)

 Ensured accessibility and responsiveness

CSE (AIDS) 8
To-Do List Manager using Python

4. Code
def display_menu():

print("\nTo-Do List Menu:")

print("1. Add task")

print("2. View tasks")

print("3. Mark task as completed")

print("4. Delete task")

print("5. Exit")

def add_task(tasks):

task = input("Enter task: ")

tasks.append({"task": task, "completed": False})

print("Task added.")

def view_tasks(tasks):

if not tasks:

print("No tasks in the list.")

return

for index, task in enumerate(tasks):

status = "[x]" if task["completed"] else "[ ]"

print(f"{index + 1}. {status} {task['task']}")

def mark_task_completed(tasks):

view_tasks(tasks)

CSE (AIDS) 9
To-Do List Manager using Python

try:

choice = int(input("Enter the task number to mark as completed: "))

if 1 <= choice <= len(tasks):

tasks[choice - 1]["completed"] = True

print("Task marked as completed.")

else:

print("Invalid task number.")

except ValueError:

print("Invalid input. Please enter a number.")

def delete_task(tasks):

view_tasks(tasks)

try:

choice = int(input("Enter the task number to delete: "))

if 1 <= choice <= len(tasks):

del tasks[choice - 1]

print("Task deleted.")

else:

print("Invalid task number.")

except ValueError:

print("Invalid input. Please enter a number.")

def main():

tasks = []

CSE (AIDS) 10
To-Do List Manager using Python

while True:

display_menu()

choice = input("Enter your choice: ")

if choice == "1":

add_task(tasks)

elif choice == "2":

view_tasks(tasks)

elif choice == "3":

mark_task_completed(tasks)

elif choice == "4":

delete_task(tasks)

elif choice == "5":

print("Exiting.")

break

else:

print("Invalid choice. Please select a valid option.")

if _name_ == "_main_":

main()

CSE (AIDS) 11
To-Do List Manager using Python

5: Results and Discussion

The To-Do List Mini Project achieved its primary goal of creating a functional and
interactive task management application. After thorough development and testing, the
following outcomes were observed:

 Task Management Functionalities:

o Users can successfully add tasks to the list with a simple input form.

o Tasks can be marked as completed, providing visual feedback (e.g.,


strike-through or check icon).

o Tasks can be edited or updated, allowing flexibility in task descriptions.

o Delete functionality works as expected to remove unwanted tasks..

 Performance:

o The app loads quickly and handles multiple tasks without lag.

o Memory usage is minimal, making it lightweight and efficient.

CSE (AIDS) 12
To-Do List Manager using Python

Discussion

The project demonstrates the successful application of core software development


principles such as modularity, user interaction handling, and CRUD operations. A few
key observations and insights gained during the development include:

1. Simplicity Is Effective:
Despite being a basic project, the to-do list is highly practical. It shows that
simple applications can solve real-world problems effectively if designed
thoughtfully.

2. User Experience Matters:


During testing, it became clear that a clean interface and immediate feedback
greatly enhance usability. Small UI choices—like using colors to indicate task
status—make a big difference.

3. Error Handling Is Important:


Handling edge cases (like empty input, very long task names, or duplicate entries)
is crucial for building a reliable app. This helped in improving input validation
and overall stability.

4. Scalability Potential:
While the current version is basic, the modular code structure allows for easy
extension in the future. Features like due dates, reminders, categories, or syncing
across devices can be added with minimal restructuring.

5. Challenges Faced:

o Implementing persistent data storage for first-time users took time to


research and test.

o Ensuring compatibility across browsers or devices required debugging


CSS and layout responsiveness.

o Balancing simplicity with functionality was a constant consideration


during design.

CSE (AIDS) 13
To-Do List Manager using Python

Fig 1 ----

CSE (AIDS) 14
To-Do List Manager using Python

Fig 2

CSE (AIDS) 15
To-Do List Manager using Python

CSE (AIDS) 16
To-Do List Manager using Python

7: Conclusion

The To-Do List Mini Project successfully demonstrates the development of a simple yet
effective task management application. Through the implementation of essential features
such as adding, editing, deleting, and marking tasks as complete, the project highlights
core programming concepts like CRUD operations, event handling, and user interface
design.
This project provided valuable hands-on experience with both the front-end and back-end
development process, depending on the technology stack used. It also emphasized the
importance of user experience, data validation, and modular coding practices.
Overall, the project not only fulfill its intended purpose of helping users manage daily
tasks efficiently but also serves as a strong foundation for learning and extending into
more advanced applications. With further enhancements such as deadline reminders,
category tagging, or user authentication, this basic To-Do List app can evolve into a full-
featured productivity tool.

CSE (AIDS) 17
To-Do List Manager using Python

8: References

[1] Zelle, John M. (2010). Python Programming: An Introduction to Computer


Science
(2nd Edition). Franklin, Beedle & Associates Inc.
[2] Schildt, Herbert. (2017). Python: The Complete Reference. McGraw-Hill
Education. – A well-structured reference book ideal for project-based learning and
mastering Python.
[3] https://docs.python.org/3/

[4] https://realpython.com/

CSE (AIDS) 18

You might also like