Zulip's Typing Constants Feature

CodeDay Labs 2023 ∙ 

Zulip is an open-source team collaboration tool with unique topic-based threading that combines the best of email and chat to make remote work productive and delightful. Fortune 500 companies, leading open source projects, and thousands of other organizations use Zulip every day.

This project is to implement settings for typing indicator delays during registration.

How much experience does your group have? Does the project use anything (art, music, starter kits) you didn't create?

CodeDay Labs team in the advanced track.

Our collective experience was varied and diverse. While none of us had prior exposure to Typescript, Oluwaseyifunmi Adeyemo had a limited background in JavaScript, and only Samuel Kabuya was acquainted with the intricacies of Django. With resolute determination, we set out to master these technologies.

Drawing upon the foundation laid in our coursework, we all shared a common introduction to REST APIs. Leveraging this knowledge, we grasped the concepts and intricacies of adding typing constants to the POST/register API endpoint. This familiarity provided us with a solid starting point.

What challenges did you encounter?

During our work on the Zulip open-source project, we faced diverse challenges that tested our problem-solving skills and determination. Setting up the development environment proved tough, particularly for Wilhelmina, Samuel Adeyemi, and Oluwaseyifunmi Adeyemo, who were unfamiliar with Ubuntu. Samuel Kabuya also struggled to provision Vagrant on his Kali Linux machine. Connectivity issues compounded the challenge, delaying progress for almost a week.

Deciphering the intricacies of the POST/register API endpoint and its response data generation presented another hurdle. Initially confused about its implementation, our mentor David Walter's insights and documentation links guided us, enabling us to grasp the process.

Implementing constants introduced further complexity, and collaborative testing hit a roadblock due to procedural unfamiliarity. Our mentor's guidance on using the curl command was invaluable.

Looking back, these challenges were valuable learning experiences that emphasized effective communication, adaptability, and seeking guidance. Our collective efforts enhanced our technical skills and team cohesion. These challenges were pivotal in fostering resilience and growth, forming a solid foundation for our future endeavors.
Participation Certificate




Oluwaseyifunmi Adeyemo