Google Summer of Code 2022 Journey
This document comprises my major contributions to Zulip as part of my GSoC'22 which is combination of several projects. My weekly checkins at chat.zulip.org are also great to view my work. Here is the list of all my merged PRs and commits.
During the coding period, I was responsible for integrating High Priority feature request. The projects on which I worked are mentioned below, along with the corresponding pull requests.
Add PMs to Recent Topics
Got to learn about how data is fetched from the backend and managed on frontend. How keyboard navigation is handled on webapp. We made many iteration on design, discussed on chat.zulip.org Currently the Pull request is blocked by a puppeteer test which I'm currently fixing.
Add an Inbox view
Issue #22189 PR [zulip/zulip#22408] This was the most interesting issue to work on as the whole feature has to implemented from scratch. I took inspiration from the implementation of "Recent topics". The whole keyboard navigation, frontend UI was build from scratch. I improved the rendering techniques for fast rendering of large numbers of unread messages. There are some bugs and some small features are yet to be implemented.
Add option for marking a user as spammer in "Deactivate user" popover
Issue #18941 PR #22506 We had to create a frontend as well as backend to add this feature. We tackled the issue of spamming in large organizations. Learned about fetching and deleting the messages. The preparatory commit has been merged.
Add section for different stream types.
Other merged PRs
- #22219 recent-topics: Mark as read using unread counters in Recent topics.
- #22180 recent_topics: Limit topic name from covering unread column.
- #22137 compose: Make compose box tooltips consitent.
I had great experience with Zulip as a part of Google Summer of Code, I got learn many new things such as Node tests, puppeteer tests and many more. I got to learn how things worked under the hood.
I would like to thank my mentor @amanagr for guiding me throughout my GSoC journey and helping me whenever there was a problem. I would like to thank @timabbott and @alya for this amazing opportunity and for reviewing my work and providing valuable feedback.
Zulip has the best developer experience and an awesome active community, working with Zulip is always fun. Zulip is the best organization for starting opensource. Zulip's extensive documentation helped me get started with
git and many other technologies.
For the time being, I'm hoping to finish the issues I started at the end of GSoC soon. This summer, I largely focused on the frontend, but I plan to contribute more on the backend in the future.