Andrew-EKrause / TeamAptiv-Web-App

Collaborative group project for CS 341 course. Project is a web application for a nonprofit organization called Aptiv.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Team Aptiv Web Application

View the Team Aptiv Project Here

 

Home Page of Team Aptiv

Screen Shot 2022-09-08 at 12 24 14 AM

Description

Collaborative Web Application Project Created for Aptiv in CS 341 Course
This web application was designed for a nonprofit organization called Aptiv. The website was part of an assignment for our CS 341 class at the University of Wisconsin - La Crosse. Groups were formed to work in a collaborative work environment that modeled modern software development methodologies. For our project, we utilized the Agile framework along with Scrum. The web application needed to satisfy key functional requirements, which were specified in the project overview given in the class. The website architecture design, functionality, workflow, and tracking can be found in the folders labeled "Architecture-Design" and "Meeting_Logs". Both folders are included as part of the files in this repository.

The web application is called "Team Aptiv", and is a site where users can view events created by the organization, volunteer for events, and donate to events. An administrator was also created for the website and has special privileges such as event creation, event cancellation, and user activation/deactivation. The website is also responsive and can maintain a user-friendly format on different window sizes. Currently, a mobile-friendly view has not been completed for the website. However, a complete mobile-friendly feature will be added in the future.

The Team Aptiv site is hosted on a Heroku server and is accessible by anyone on the world wide web. A user help manual is provided on the website within the "Mission" link and can also be accessed by clicking the "Support Us" button on the home page. The user help manual explains basic features of the website as well as provides basic information on navigating through Team Aptiv. The site will have additional functionalities added at some point. In the meantime, as the creators of this web application, we hope that you enjoy exploring the Team Aptiv site. A list of resources used for the website, functionalities, and future add-ons are listed below:

Resources for Project:

 

NOTE:

If you decide to login as a user to further explore or test out the website, please do not create an account with a password that you already use for sensitive data. Use a strong password and write it down or save it somewhere as the website does not contain a "Forgot Password" feature (this will be implemented later on).

 

Functionalities:

  • Please Note: Logging in as the admin is not available to individuals who access this repository and/or access the Team Aptiv website.
  • The admin can view events, cancel events, create new events, view users that are registered with the Team Aptiv website, deactivate user accounts, and activate user accounts.
  • User account registration.
  • User account sign-in or registration through Google authentication.
  • Ability to view different event details on the website as well as a provided user help manual. The user help manual can be downloaded from the website.
  • Registered users can volunteer for and/or donate to events.
  • Registered users can cancel their event timeslots that they have signed up for.
  • Registered users can change the color scheme for parts of the website. Users with accounts also have the ability to select three different font sizes that will be applied to the entire website. The three font sizes that the users with accounts can choose between are: Normal, Large, and Extra Large.
  • All users can access links available at the bottom of the website to explore more information regarding the actual Aptiv organization.

 

Future Add-Ons:

  • "Forgot Password" feature that allows user to retrieve their forgotten password or create a new one.
  • A "Change my Password" feature that allows a user to change their password if they feel the need to do so.
  • Feature that allows more than one administrator account to be created.
  • Feature that allows admin to dictate how many volunteers are needed for a particular time slot.
  • Handling for the case when user attempts to sign up for an event that conflicts with a cancelled event.
  • A complete mobile-friendly view for the website so that it can be utilized on a mobile device.
  • Pop-ups that ask the user to confirm certain actions being taken.

 

Important Assumptions for Project:

  • When a user account is deactivated, it is the user's responsibility to contact the admin about the situation.
  • When a user's account has been deactivated, the user does not lose all the data attached to their account such as volunteered time slots. This due to the fact that the admin can activate the user account again.
  • Credit card and payment information are outside the scope of this project.
  • When the admin cancels an event, the user can still run into a time conflict with an event that has a time overlapping with their cancelled event. This is due to the fact that the admin can reschedule the cancelled event. In this case, to "reschedule" means to "un-cancel" the event.
  • The admin is the only user that can create new events, cancel events, and deactivate/activate user accounts.
  • Each volunteer time slot only requires one volunteer.
  • The number of time slots is usually dictated by the number of volunteers needed for a given event.
  • Once a user signs up for a time slot, that time slot is no longer available for sign-up by other users.
  • When a first registers with the site (when they create an account with the site), the are assumed to be a volunteer. After they donate to an event, their "user status" gets upgraded to "donor".
  • It is up to the user to contact the admin when they wish to cancel an event time slot that they had signed up for the day of the event (this is hypothetical as the website does not actually act as a hosting site for actual events).

 

Collaborators

@Author: Andrew Krause (Owner of this repository)
LinkedIn: https://www.linkedin.com/in/andrew-krause-b6aa21179/
Portfolio: https://andrewkrause.dev/
Instagram: https://www.instagram.com/aek.krause/
Facebook: https://www.facebook.com/andrew.krause.35325

@Author: Riley Radle
GitHub: https://github.com/19radleriley
LinkedIn: https://www.linkedin.com/in/rileyradle/
Portfolio: https://19radleriley.github.io/PortfolioSite/
Instagram: https://www.instagram.com/riley11radle/
Facebook: https://www.facebook.com/profile.php?id=100012265156601

@Author: Anthony Musbach
GitHub: https://github.com/musbachmadness
LinkedIn: https://www.linkedin.com/in/anthony-musbach-ba76b41a6/
Instagram: https://www.instagram.com/backyardboarding12/
Facebook: https://www.facebook.com/profile.php?id=100010685262461

@Author: Zach Gephart
GitHub: https://github.com/gephartzachary
LinkedIn: https://www.linkedin.com/in/zachary-gephart-9bbab81ba/
Instagram: https://www.instagram.com/zach.gephart/
Facebook: https://www.facebook.com/zach.gephart.5

About

Collaborative group project for CS 341 course. Project is a web application for a nonprofit organization called Aptiv.

License:MIT License


Languages

Language:JavaScript 45.2%Language:EJS 43.0%Language:CSS 11.7%Language:Shell 0.1%