KWOC Project Report

Anshuman Mohapatra
4 min readJan 4, 2021
Kharagpur Winter of Code(KWoC)

#About KWOC

Kharagpur Winter Of Code(KWOC) is a 5-week long online program organized by KOSS for students of various colleges all over India , want to contribute to open source software development and prepare for other open source software development competitions that are conducted through out the world.

#Selecting the Project

Selecting the project to contribute was the toughest task. As soon as the projects were made available on the official website I went through all the projects one by one and selected the project to-do extension.

#Reason for selecting the project

Most of the project that I saw were based either on Web Development or App
Development but I wanted to explore something new so I decided to contribute to to-do extension project as it was based on a making a to-do browser extension.

#Project

to-do extension

#Mentor

Aditya Bisoi

#Github repository

#Contribution Process

PR-1#manifest.json added

Against Issue

What I did

The very first step for developing a browser extension is to add a manifest.json file , which contains all the information and configurations of the browser extension.

PR-2#popup page and background.js added

Against Issue

What I did

Every browser extension needs a popup page that open on starting the extension and also need a background script which needs to be run at the background which runs the extension even if the extension is not launched. I added these two things into the code base.

PR-3#input field added with a basic js structure

Against Issue

What I did

For entering the to-do item we needed a input field where the user can enter the item to save it. So I added it to the code base.

PR-4#Add as list

Against Issue

What I did

The task that was entered into the input field needs to be shown in list format hence I added the code to dynamically add a list item to the unordered list as the user adds the to-do item.

PR-5#fetching to-do from chrome storage on opening extension close#18

Against Issue

What I did

Anything the user adds to the list will be removed from the memory once the extension is closed as it was not being saved at any place so I used Chrome Storage API to store the to-do items as they were added and retrieved the from the Chrome Storage when again the extension was opened.

PR-6#Clear button added close#21

Against Issue

What I did

Every time the user completes a to-do task the task needs to be removed from the list so I added a button to every list item which when clicked would clear the list item and even delete it from the Chrome Storage.

PR-7#file path changed close#31

Against Issue

What I did

In another PR the paths of many files had changed due to a change in folder structure hence many things were not working , so in this PR I changed all the file paths.

--

--