StudyLink

Overview

StudyLink, a collaborative effort by students at UH Manoa, serves as a practical solution for ICS students to streamline study session planning and coordination. Designed with simplicity and efficiency in mind, StudyLink offers a platform where students can easily organize and join study sessions for their classes. Upon registration, users gain access to personalized profiles, allowing them to add custom profile pictures and basic personal information. The core feature of StudyLink revolves around its dynamic calendar functionality, powered by MongoDB and FullCalendar plugin. This calendar integrates with user profiles, displaying all available study sessions. Users can effortlessly explore upcoming study sessions by clicking on calendar entries, revealing details such as session attendees, date/time, description, and RSVP options. Session creation is equally straightforward, with a simple form ensuring validation before sessions are added to the collection. Furthermore, StudyLink includes a convenient 'My Sessions' page, enabling users to manage and edit their created sessions with ease. Here, a simple form facilitates quick updates to session details, ensuring calendar accuracy.

Contributions

My involvement in StudyLink has been multifaceted, contributing significantly to the development and functionality of key features within the platform. First, I worked on the creation of the Profile system, which serves as the first of user interactions within StudyLink. This involved integrating the sign-up process and establishing the necessary connections with the Meteor user collection. Additionally, I crafted the 'My Profile' and 'Edit Profile' pages, implementing features such as prefilling forms with user information to streamline the editing experience. Furthermore, I developed the MongoDB publications and methods that underpin these functionalities, ensuring efficient data management.

In addition to the Profile system, I played a pivotal role in building the Session collection and its associated functionalities. This included defining the structure of the Session collection, establishing publications to facilitate data access, and implementing the edit session functionality to empower users in managing their study sessions effectively.

Moreover, I led the development of the Calendar pop-up mechanic, leveraging modals, state management, and custom functions to create a seamless user experience. This feature enhances usability by providing users with detailed session information at their fingertips.

Lastly, I engineered the RSVP button mechanic, along with its validation process, which involves searching through the list of attendees. This ensures that the RSVP functionality operates smoothly and accurately reflects session attendance.

What I learned

Through my experience with StudyLink, I have gained invaluable insights and skills that extend beyond technical proficiency. Working collaboratively on this project has taught me the importance of effective communication and managing expectations within a team setting. Additionally, I've honed my skills in utilizing GitHub functionalities such as issue and project boards, enhancing my project management capabilities. Embracing new libraries of code with no prior familiarity has broadened my adaptability and problem-solving skills. Moreover, my proficiency in managing Mongo Collections and understanding the server/client separation of data in Meteor applications has significantly improved. I've also enhanced my ability to implement state management and integrate error messages seamlessly into the application. Overall, my journey with StudyLink has been transformative, equipping me with a diverse set of skills and experiences that will undoubtedly benefit my future endeavors in software development.

StudyLink Organization Page

*ChatGPT used for rewording of sentences