<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><b>[Status Update for the Project] - </b><b>Week-10, Week-11 & Week-12</b><br></div><div><br></div><div><b>Completed</b><br></div><div><u>1. Web-Frontend</u></div><div>    1. Created the frontend for the dashboard including the templates for listing, editing, creating subscriptions.</div><div><br></div><div><u>2. Web-Backend</u></div><div>    1. Created the backend routes for handling the form-responses for creating/modifying/disabling/enabling the subscriptions, while also creating data routes for providing data for list of subscriptions, etc.</div><div><br></div><div><u>3. Miscellaneous</u></div><div>    1. Cleaned up the codebase before the final evaluation.</div><div>    2. Connected with Geko & Silvia to give them a code walkthrough.</div><div><br></div><div><br></div><div><b>Next Steps</b></div><div>1. Integrate the individual pieces and fix minor issues while doing so.</div><div>2. Add documentation for the project explaining its architecture & design choices.</div><div>3. Get feedback from the community and improve accordingly.</div><div>4. Deploy the project.<br><br>Updates for the Project will also be made available on the Project Wiki - <a href="https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Project-Status-Updates/Week-10,-Week-11-&-Week-12">Week 10, Week 11 & Week 12 · Wiki · sarthikg / Tor-Weather · GitLab (torproject.org)</a><br><br>Thanks & Regards,<br>Sarthik Gupta</div></div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 18, 2022 at 12:17 AM Sarthik Gupta <<a href="mailto:sarthikg@gmail.com">sarthikg@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><b>[Status Update for the Project] - </b><b>Week-7, Week-8 & Week-9</b><br></div><div><b><br></b></div><div><b>Completed</b><b><br></b></div><div><u>1. Web-Frontend</u></div><div>    a. Created the login, register, email-verification flow.</div><div>    b. Architected the system for consuming SCSS files, services for creating responses, and enablement of styles with hot-module reloading.</div><div><br></div><div><u>2. Web-Backend</u></div><div>    a. Architected the backend structure for API Routes.</div><div>    b. Added API Routes for authorization, authentication, verification, register & login.</div><div><br></div><div><u>3. Miscellaneous</u></div><div>    a. Refactored the architecture of the shared directory.</div><div>    b. Created multiple utilities to be consumed across the application.</div><div><br></div><div><b>In-Progress</b><br></div><div><u>1. Web-Backend</u></div><div>    a. Adding error boundary for all the routes.</div><div>    b. Creating routes for handling the dashboard.</div><div><br></div><div><u>2. Web-Frontend</u></div><div>    a. Designing & developing the web-frontend for the dashboard.</div><div><br></div><div>Updates for the Project will also be made available on the Project Wiki - <a href="https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Project-Status-Updates/Week-7,-Week-8-&-Week-9" target="_blank">Week 7, Week 8 & Week 9 · Wiki · sarthikg / Tor-Weather · GitLab (torproject.org)</a><br></div><div><br></div><div><div style="color:rgb(80,0,80)">Thanks & Regards,</div><div style="color:rgb(80,0,80)">Sarthik Gupta</div></div></div></div></div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jul 28, 2022 at 1:00 AM Sarthik Gupta <<a href="mailto:sarthikg@gmail.com" target="_blank">sarthikg@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><b>[Status Update for the Project] - </b><b>Week-5 & Week-6</b></div><div><br></div><div><b>Completed</b><br></div><div><u>1. Writing Scripts</u></div><div>    a. Modified scripts for NodeDownSub & NodeBandwidthSub to accomodate a better way of handling the trigger times.</div><div>    b. Added scripts for NodeFlagSub for Exit, Fast, Guard, Stable, Valid flags.</div><div>    c. Uniformed the structure for the scripts to handle similar named columns.</div><div><br></div><div><u>2. Web-Frontend</u></div><div>    a. Continued working on mock designs</div><div>    b. Started developing the jinja templates for the frontend consumption</div><div><br></div><div><u>3. Miscellaneous</u></div><div>    a. Broke down the NodeFlagSub into individual tables to ease out the addition for further flags.</div><div>    b. Fixed the issue with the clearing of tables when starting the development server.</div><div>    c. Reorganised the files & directories.</div><div><br></div><div><b>In-Progress</b><br></div><div><u>1. Web-Frontend</u></div><div>    a. Continue working on the Jinja templates for the web frontend including the styling.</div><div><br></div><div><u>2. Web-Backend</u></div><div>    a. Started working on the flask backend for handling customizations in the UI</div><div><br></div><div>Updates for the Project will also be made available on the Project Wiki - <a href="https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Project-Status-Updates/Week-5-&-Week-6" target="_blank">Week 5 & Week 6 · Wiki · sarthikg / Tor-Weather · GitLab (torproject.org)</a><br></div><span><div><br></div><div><div>Thanks & Regards,</div><div>Sarthik Gupta</div></div></span></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jul 13, 2022 at 11:02 PM Sarthik Gupta <<a href="mailto:sarthikg@gmail.com" target="_blank">sarthikg@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><b>[Status Update for the Project] - </b><b>Week-3 & Week-4</b></div><div><br></div><div><b>Completed</b><br></div><div><u>1. Created Mock Server</u></div><div>    a. Created mock-server for mocking the response from Onionoo.</div><div>    b. Created interfaces for the response.</div><div>    c. Introduced utility functions like camelCaseRecursive, readJson, etc.</div><div>    d. Created mock-data for the database when running in dev environments</div><div>    e. Setup the mock-data population when running the app.</div><div><br></div><div><u>2. Writing Scripts</u></div><div>    a. Architecture the pattern for writing scripts, fetching data, sending emails, etc.</div><div>    b. Created classes representing Onionoo, Relay, Subscription.</div><div>    c. Developed scripts for NodeDownSub, NodeBandwidthSub.</div><div><br></div><div><b>In-Progress</b><br></div><div><u>1. Developing the Scripts</u></div><div>    a. The development of scripts is in progress for other subscriptions.</div><div>    b. Having a pattern in place makes it easy to develop new scripts.</div><div><br></div><div><u>2. Initiated the Web-Frontend</u></div><div>    a. Started creating mocks for the web-frontend, this includes mocking designs for the frontend using tor design guidelines.</div><div><br></div><div>Updates for the Project will also be made available on the Project Wiki - <a href="https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Project-Status-Updates/Week-3-&-Week-4" target="_blank">Week 3 & Week 4 · Wiki · sarthikg / Tor-Weather · GitLab (torproject.org)</a><br></div><div><br></div><div><div>Thanks & Regards,</div><div>Sarthik Gupta</div></div></div></div></div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jul 3, 2022 at 2:05 PM Sarthik Gupta <<a href="mailto:sarthikg@gmail.com" target="_blank">sarthikg@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><b>[Status Update for the Project] - </b><b>Week-1 & Week-2</b><div><b><br></b></div><div><b>Completed</b></div><div><u>1. Initialized the Repository:</u></div><div>   a. Used <code>pipenv</code> for managing packages & virtual environments.</div><div>   b. Added & configured linters, formatters & other tools.</div><div>   c. Created few pre-commit hooks for automating trivial tasks.</div><div>   d. Configured dev & prod environments with config file.</div><div>   e. Setup a few branch policies on GitLab.</div><div><br></div><div><u>2. Initiated the Flask App:</u></div><div>    a. Created a shared SMTP package with few utility methods for sending emails.</div><div>    b. Configured the process of injecting data in dynamic email templates.</div><div>    c. Configured the database connections with the project.</div><div>    d. Added models for the tables to be created at startup if does not exist already.</div><div><br></div><div><b>In-Progress</b></div><div>1.<b> </b>Initiated the development of scripts for fetching data from Onionoo.</div><div>2. Started developing queries for fetching data from the tables including interfaces for each of the responses.</div><div><br></div><div><br></div><div>Updates for the Project will also be made available on the Project Wiki - <a href="https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Project-Status-Updates/Week-1-&-Week-2" target="_blank">Week 1 & Week 2 · Wiki · sarthikg / Tor-Weather · GitLab (torproject.org)</a>.</div><span><div><br></div><div>Thanks & Regards,</div><div>Sarthik Gupta</div></span></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 27, 2022 at 2:03 AM Sarthik Gupta <<a href="mailto:sarthikg@gmail.com" target="_blank">sarthikg@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><p>Hello everyone,</p>
<p>I’m Sarthik Gupta (irc: sarthikg), a recent grad from Punjab Engineering College, Chandigarh & currently working as a Software Engineer at Soroco. This summer, I’ll be working on GSoC Project: “Tor Weather: Improving the Tor Network” with my mentors GeKo & Silvia. I’m extremely excited to be a part of Tor and am interested in working on this project!</p>
<p>Briefing about the project: As of now, if any relay disappears from the tor-network, no one will know. This causes the network to lose out on bandwidth from nodes which have been down for hours because no-one knew they were down. Tor-Weather aims at solving this by creating a notification service which relay operators can subscribe to in order to get various types of updates for their relays.</p>
<p>The tor-weather service will offer a plethora of notifications options for the relays. These include, the node being down, running on EOL/Outdated version, losing a flag, ranking in top 20/50/100, etc. These notifications can be subscribed & customised by the relay operators to fit their needs using a web-frontend.</p>
<p>A detailed proposal for this project is available at: <a href="https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Proposal" target="_blank"></a><a href="https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Proposal" target="_blank">https://gitlab.torproject.org/sarthikg/tor-weather/-/wikis/Proposal</a>. I plan to keep this wiki updated with the progress & design decisions taken throughout the development of the project.</p>
<p>Suggestions are always welcomed! Please reach out to us in irc (#tor-dev) for any ideas, questions, or suggestions you might have.</p>
<p>Thanks,</p><p>Sarthik Gupta</p></div></div>
</blockquote></div>
</blockquote></div>
</blockquote></div>
</blockquote></div>
</blockquote></div>