GSoC’21: Scan8 server-side operations

Maanas Talwar
SCoRe Lab
Published in
2 min readJun 20, 2021

--

During the second week of the GSoC’21 coding phase, I worked on the back-end side of things. I developed a mechanism to update each scan’s progress at the front-end dynamically and connected the MongoDB database to the application. I also created a well-defined structure and schema for the data stored in the database.

I used a server push mechanism (SSE: server-sent events) to implement the dynamic progress updates. In a typical application, the client requests data, and the server serves with an appropriate response. Server-sent events enable the server to send a stream of data without the client requesting it. This way, the server can trigger an update in the user interface whenever the data changes.

This week I also worked on connecting MongoDB to the application. I divided all the scans into various collections as per their status (queued, running, and completed). Further, each collection has documents wrt each scan defining multiple fields to identify and keep track of their progress.

During development, I closed multiple issues through pull requests and learned more about industry-standard programming practices from my mentors.

Next up

For the following week, I have decided to develop a mechanism to store uploaded files to the server and extract useful information from this for scans’ status.

Stay tuned for further updates :)

Project: Scan8

Feel free to connect with me on LinkedIn and check out my GitHub profile.

--

--

Maanas Talwar
SCoRe Lab

maanas-talwar.github.io | Microsoft SWE Intern'22 | GSoC'22 Mentor | GSoC'21 | Senior @ NSUT