A discovery portal for CS4624 projects
dc.contributor.author | Arze, Henry | en |
dc.contributor.author | Natysin, Logan | en |
dc.contributor.author | Titi, Matthew | en |
dc.contributor.author | Underwood, Patrick | en |
dc.date.accessioned | 2024-12-17T23:05:18Z | en |
dc.date.available | 2024-12-17T23:05:18Z | en |
dc.date.issued | 2024-12-12 | en |
dc.description | This project was done in fulfilling a requirement for the CS 4624 Capstone Course. The Team is tasked with creating a web application that displays information and files of all previous projects that were originally uploaded to the VTechWorks website under the tag Multimedia, Hypertext & Information Access, as well as information and files uploaded in the future. This project is to be usable on all OS types and support user authentication and differing permission levels and accesses based on said authentication. Furthermore, the web application should allow for users to search the database for projects based on specified search criteria. It will also allow users of higher permissions to create and upload projects to the database based on a form that requests information and files regarding the project. Finally, it will also allow users of higher permissions to create new projects that students can join. | en |
dc.description.abstract | CS4624 is one of many capstone courses a student within the CS curriculum is able to take. The multimedia and hypertext course digs into the diverse range of multimedia content such as images, audio, video, and any information retrieval and access relating to it. With this comes the capstone project which is a semester long project given to us students to allow a display of mastery within our discipline. It has been a pleasure to have Dr. Farag’s guidance with the project. An insight into real-world applications as well as a diverse approach to different problems has allowed us to grow as both people and developers. The current discovery portal for CS4624 student projects serves as a platform for students working within the course to submit and hold their projects. Details included within the pages on the discovery portal consist of abstract, date, author, presentation, final report, source code, and collections. Additionally, the discovery portal contains filtering features to allow users to specifically search for any project dependent on; recent submissions, issue semester, author, title, subject, content type, and department. This allows teachers to easily access desired projects as well as a safe holding for semester long projects that students worked hard on. With this comes the purpose of the project. After reviewing the functionality and appearance of the existing discovery portal, there were many things that needed to be improved on. The first step was reworking the backend, where we made a transition from MongoDB to MySQL. This change was necessary in order to support a more scalable and relational database, where project files proved to be large, and MongoDB had limitations in supporting such file sizes. We also transitioned from Node/Express to a Flask backend that could easily interact with the ReactJS frontend. Once our system was structured to our liking, we aimed to repair the core features. The login, project sign-up, and other features were not functioning properly, and required fixes to support distinct user roles. Linking all the existing features between the frontend and backend was essential to the continuation of this project. After analyzing the discovery portal, our main focus became expanding the features for the three user roles: admin, client, and student. Because they share functionality and view collections similarly, we created a reusable home view tailored to each user's permissions. Protected pages were introduced to secure our system, and we redesigned the frontend with Tailwind and ShadCN components for a more modern interface. This overhaul now provides CS4624 students, instructors, and clients with a more efficient, centralized platform for accessing, managing, and preserving semester-long projects, eliminating the need for Canvas or manual entries. Upon completion, we hope to provide future CS4624 students and staff with a more convenient tool to guide them in their journey of completing their capstone projects. | en |
dc.identifier.uri | https://hdl.handle.net/10919/123822 | en |
dc.language.iso | en | en |
dc.publisher | Virginia Tech | en |
dc.rights | CC0 1.0 Universal | en |
dc.rights.uri | http://creativecommons.org/publicdomain/zero/1.0/ | en |
dc.title | A discovery portal for CS4624 projects | en |
dc.type | Software | en |
Files
Original bundle
1 - 5 of 5
Loading...
- Name:
- Final Presentation- CS4624 Discovery Portal.pdf
- Size:
- 2 MB
- Format:
- Adobe Portable Document Format
Loading...
- Name:
- CS_4624-Discovery_Portal_ Final_Report.pdf
- Size:
- 2.69 MB
- Format:
- Adobe Portable Document Format
- Name:
- Final Presentation- CS4624 Discovery Portal.pptx
- Size:
- 3.8 MB
- Format:
- Microsoft Powerpoint XML
License bundle
1 - 1 of 1
- Name:
- license.txt
- Size:
- 1.5 KB
- Format:
- Item-specific license agreed upon to submission
- Description: