ICS 314 Final Project - UH Club Hub

For our final project in the ICS 314 software engineering course, we had to create a web based application around an idea that would help members of the UH community. Our require included using the meteor framework and UH login system to support the application.

We decided on a project that would create an application that would allow students and administrators to create, share, join, and edit clubs on a website that is centered around the UH community.

Our team consisted of three members. Myself, HaiLing Li, and Christian Leandro. We each used GitHub to facilitate what objectives would be carried out by which person by seperating each task into different issues and using GitHub’s branching feature to make our work more organized.

The first order of business was to get the basic functionality and mockup pages working for Milestone 1. This included creating the landing and login pages.

When an user first lands on the site, they are greeted with the landing page (this was shown as the cover image for the project) and have the option to login in or browse clubs. The site has less funcationality if you are not logged in but the additional features available when you would log in would be further developed in the second milestone.

In the second milestone, we added new pages and functionality to help the website cater to different types of users. Using the UH CAS authentication system, we were able to tell when an user has logged in and what their status is. If the user is a student, they will be able to view what clubs they are currently in and associated events. If the user is an administrator, they can edit their current clubs or create new ones. We also improved the browsing functionality for exploring new clubs.

In the third and final milestone, errors were fixed and overall functionality was imrpoved for user experience. We added a few sample clubs to demonstrate how the website would function with a populated database. We also implemented a filter that users can use to more easily find clubs that they are interested in. For example, a person interested math would be able to select math from the drop down list and the browse clubs page would display clubs related to math (in the current state of the project, there is only one).

My contributions to this club were not as great as I had wished them to be. HaiLing Li and Christian Leandro deserve practically all credit for this project, as I was too burdened with other responsibilities to generally help out. I will, however, go back and review all of the source code and learn what I can from their genereous contributions and take that knowledge with me as I tackle more projects in the future. I want to thank them for their kindness, forgiveness, and helpfulness through this project. They would be the best teammates anybody could ask for.

The project is documented in full detail here.