Fithub is a website application for athletes and fitness enthusiasts of all ages and experience levels.

Overview

TeamA13: Fithub

Welcome to the Github Repository for TeamA13's IMBD web application project! Note that all code in this repo is production-ready and should match the current deployed, functional state. The buildfiles for this project to run on Google App Engine includes the requirements.txt and app.yaml files. Requirements.txt lists all of the python libraries and dependencies that our web app needs to deploy.

Website Link: FitHub

Team Members:

Andy Wu

  • EID: amw5468
  • GitHub ID: wuhoo16
  • Tasks
    • Phase 1:
      • Youtube API testing and backend infrastructure: Estimated Completion Hours: 3
      • Youtube API testing and backend infrastructure: Actual Completion Hours: 3
      • Flask framework: Estimated Completion Hours: 1
      • Flask framework: Actual Completion Hours: 1
      • Youtube Channel model page design: Estimated Completion Hours: 3
      • Youtube Channel model page design: Actual Completion Hours: 3
      • Github branch/code integration: Estimated Completion Hours: 0.5
      • Github branch/code integration: Actual Completion Hours: 6
      • SERPSTACK API and broken image link debugging: Estimated Completion Hours: 1
      • SERPSTACK API and broken image link debugging: Actual Completion Hours: 3
      • Equipment model and instance pages: Estimated Completion Hours: 3
      • Equipment model and instance pages: Actual Completion Hours: 5
      • About Page Design and Content: Estimated Completion Hours: 1
      • About Page Design and Content: Actual Completion Hours: 2
      • Backend refactoring and MongoDB setup: Estimated Completion Hours: 4
      • Backend refactoring and MongoDB setup: Actual Completion Hours: 4
      • Blacklisting Bad Exercises and Fixing Bad Information: Estimated Completion Hours: 2
      • Blacklisting Bad Exercises and Fixing Bad Information: Actual Completion Hours: 3
    • Phase 2:
      • Design and API Result Modification for Cross-Model Linking Support: Estimated Completion Hours: 7
      • Design and API Result Modification for Cross-Model Linking Support: Actual Completion Hours: 5
      • Integrating Christopher's Branch with Updated Ebay API + Equipment Model/Instance Pages: Estimated Completion Hours: 0.5
      • Integrating Christopher's Branch with Updated Ebay API + Equipment Model/Instance Pages: Actual Completion Hours: 6
      • Integrating Kaylee's Branch with Updated YouTube APIs + Channel Model/Instance Pages: Estimated Completion Hours: 0.5
      • Integrating Kaylee's Branch with Updated Youtube APIs + Channel Model/Instance Pages: Actual Completion Hours: 1
      • Backend Helper Method Implementation for Cross-Model Instance Linking: Estimated Completion Hours: 4
      • Backend Helper Method Implementation for Cross-Model Instance Linking: Actual Completion Hours: 5
      • Refactoring codebase to improve runtime and object reference in routing methods and HTML Templates: Estimated Completion Hours: 3
      • Refactoring codebase to improve runtime and object reference in routing methods and HTML Templates: Actual Completion Hours: 3
      • Implementing all unittests to test the Python code/database communication: Estimated Completion Hours: 3
      • Implementing all unittests to test the Python code/database communication: Actual Completion Hours: 3
    • Phase 3:
      • Filtering implementation for all 3 model pages: Estimated Completion Hours: 5
      • Filtering implementation for all 3 model pages: Actual Completion Hours: 5
      • Updating Flask view function to support persisting filtered results across pagination pages: Estimated Completion Hours: 2
      • Updating Flask view function to support persisting filtered results across pagination pages: Actual Completion Hours: 3
      • Debugging and fixing frontend carousel control bug and linking issues from phase 2: Estimated Completion Hours: 1
      • Debugging and fixing frontend carousel control bug and linking issues from phase 2: Actual Completion Hours: 2
      • Adding javascript code to prevent bad form submission and persist checkbox states: Estimated Completion Hours: 4
      • Adding javascript code to prevent bad form submission and persist checkbox states: Actual Completion Hours: 8
      • Checking images on the exercises model page for mismatch on equipment usage + replacing with relevant GIFs: Estimated Completion Hours: 3
      • Checking images on the exercises model page for mismatch on equipment usage + replacing with relevant GIFs: Actual Completion Hours: 4
      • Using Adobe Premier to edit hype video, formatting video on HTML page, adding Javascript to handle autoplay/looping logic: Estimated Completion Hours: 2
      • Using Adobe Premier to edit hype video, formatting video on HTML page, adding Javascript to handle autoplay/looping logic: Actual Completion Hours: 4
      • Sorting Implementation for all 3 model pages: Estimated Completion Hours: 3
      • Sorting Implementation for all 3 model pages: Actual Completion Hours: 3
      • Selenium Testing for filtering functionality and final deployment: Estimated Completion Hours: 5
      • Selenium Testing for filtering functionality and final deployment: Actual Completion Hours: 5
    • Phase 4:
      • Full code refactor to improve website stability, remove backend server logic, and support multi-client usage: Estimated Completion Hours: 5
      • Full code refactor to improve website stability, remove backend server logic, and support multi-client usage: Actual Completion Hours: 16
      • Final debugging and deployment: Estimated Completion Hours: 5
      • Final debugging and deployment: Actual Completion Hours: 7

Kaylee N Trevino

  • EID: knt658
  • GitHub ID: kntrevi1
  • Tasks:
    • Phase 1:
      • Flask framework: Estimated Completion Hours: 1
      • Flask framework: Actual Completion Hours: 2
      • Youtube API testing & backend infrastructure: Estimated Completion Hours: 3
      • Youtube API testing & backend infrastructure: Actual Completion Hours: 4
      • Youtube Channel model page design: Estimated Completion Hours: 2
      • Youtube Channel model page design: Actual Completion Hours: 3
      • Youtube Channel three instance page designs: Estimated Completion Hours: 4
      • Youtube Channel three instance page designs: Actual Completion Hours: 6
      • Github branch/code integration: Estimated Completion Hours: 1
      • Github branch/code integration: Actual Completion Hours: 3
      • Home/Splash Page Design and Content: Estimated Completion Hours: 2
      • Home/Splash Page Design and Content: Actual Completion Hours: 4
      • Starting .py file to populate database in MongoDB: Estimated Completion Hours: 2
      • Starting .py file to populate database in MongoDB: Actual Completion Hours: 3
    • Phase 2:
      • Adding API calls to backend for channel model: 6
      • Adding API calls to backend for channel model: 6
      • Working on backend for channel model: 5
      • Working on backend for channel model: 6
      • Cleaning up and creating objects sent to MongoDB for channels: 3
      • Cleaning up and creating objects sent to MongoDB for channels: 3
      • Channel instance pages changing static data to dynamic data: 4
      • Channel instance pages changing static data to dynamic data: 4
      • Github branch/code integration: 1
      • Github branch/code integration: 1
      • Adding Selenium testing for channels model and channels instance pages: 2
      • Adding Selenium testing for channels model and channels instance pages: 3
      • Worked on reports and organization of leading team as project lead: 3
      • Worked on reports and organization of leading team as project lead: 3
    • Phase 3:
      • Search implementation for all 3 model pages in real-time: Estimated Completion Hours: 8
      • Search implementation for all 3 model pages in real-time: Actual Completion Hours: 9
      • Search implementation for all 3 model pages after entering search and updating cards: Estimated Completion Hours: 6
      • Search implementation for all 3 model pages after entering search and updating cards: Actual Completion Hours: 6
      • Updating Flask view function to support persisting searching and sorting results across pagination pages: Estimated Completion Hours: 3
      • Updating Flask view function to support persisting searching and sorting results across pagination pages: Actual Completion Hours: 3
      • Integration of and bux fixes when integrating stacking of sorting, filtering, and searching: Estimated Completion Hours: 5
      • Integration of and bux fixes when integrating stacking of sorting, filtering, and searching: Estimated Completion Hours: 6
      • Worked on corner/edge cases such as stacking resulting in no more instances: Estimated Completion Hours: 3
      • Worked on corner/edge cases such as stacking resulting in no more instances: Estimated Completion Hours: 4
      • Added testing to test the search bar functionality: Estimated Completion Hours: 4
      • Added testing to test the search bar functionality: Estimated Completion Hours: 3
    • Phase 4:
      • Full code refactor to modularize code and move code into classes and interfaces: Estimated Completion Time: 8 hrs
      • Full code refactor to modularize code and move code into classes and interfaces: Actual Completion Time: 10 hrs
      • Full code refactor to improve website stability, remove backend server logic, and support multi-client usage (pair-programmed with Andy): Estimated Completion Time: 10
      • Full code refactor to improve website stability, remove backend server logic, and support multi-client usage (pair-programmed with Andy): Estimated Completion Time: 14
      • Implementation of Model Facade Pattern: Estimated Completion Time: 4
      • Implementation of Model Facade Pattern: Estimated Completion Time: 5
      • Refactoring frontend to increase code reusability: Estimated Completion Time: 3
      • Refactoring frontend to increase code reusability: Actual Completion Time: 3

Christopher Saenz

  • EID: cgs2258
  • GitHub ID: ChriSaenz
  • Tasks:
    • Phase 1:
      • SERPSTACK API Setup and Integration: Estimated Completion Hours: 3
      • SERPSTACK API Setup and Integration: Actual Completion Hours: 4
      • Equipment Model Page Functionality and Design: Estimated Completion Hours: 4
      • Equipment Model Page Functionality and Design: Actual Completion Hours: 7
      • About Page Content: Estimated Completion Hours: 13
      • About Page Content: Actual Completion Hours: 0.5
    • Phase 2:
      • Initial Instance Page Work for All 3 Models: Estimated Completion Hours: 2
      • Initial Instance Page Work for All 3 Models: Actual Completion Hours: 2
      • eBay API Setup and Integration: Estimated Completion Hours: 6
      • eBay API Setup and Integration: Actual Completion Hours: 5
      • Update Equipment Instance Model Page to Fit eBay API: Estimated Completion Hours: 2
      • Update Equipment Instance Model Page to Fit eBay API: Estimated Completion Hours: 4
      • Equipment Instance Page Functionality and Design: Estimated Completion Hours: 3
      • Equipment Instance Page Functionality and Design: Actual Completion Hours: 2
      • Blacklisting of Non-Fitness Related API Results: Estimated Completion Hours: 1
      • Blacklisting of Non-Fitness Related API Results: Actual Completion Hours: 1
      • About Page Content: Estimated Completion Hours: 0.5
      • About Page Content: Actual Completion Hours: 0.5
      • Equipment Model Page Testing: Estimated Completion Hours: 2
      • Equipment Model Page Testing: Actual Completion Hours: 3
      • Equipment Instance Page Testing: Estimated Completion Hours: 1
      • Equipment Instance Page Testing: Estimated Completion Hours: 3
    • Phase 3:
      • Replace carousel in equipment instance pages: Estimated Completion Hours: 0
      • Replace carousel in equipment instance pages: Estimated Completion Hours: 1
      • Sorting for all 3 model pages: Estimated Completion Hours: 6
      • Sorting for all 3 model pages: Actual Completion Hours: 12
      • Modified design functions to support simultaneous filtering and sorting: Estimated Completion Time: 5
      • Modified design functions to support simultaneous filtering and sorting: Actual Completion Time: 6
      • Testing sorting and filtering for all 3 models: Estimated Completion Hours: 3
      • Testing sorting and filtering for all 3 models: Actual Completion Hours: 3
      • Testing JavaScript functions: Estimated Completion Hours: 6
      • Testing JavaScript functions: Actual Completion Hours: 5
    • Phase 4:
      • Test cases for issues found in Phase 3: Estimated Completion Hours: 4
      • Test cases for issues found in Phase 3: Actual Completion Hours: 2
      • Design Report and Technical Report: Estimated Completion Hours: 2
      • Design Report and Technical Report: Actual Completion Hours: 3

Michelle Wen

  • EID: mw37583
  • GitHub ID: michellewen3
  • Tasks:
    • Phase 1:
      • wger API integration: Estimated Completion Hours: 2
      • wger API integration: Actual Completion Hours: 6
      • wger API model page: Estimated Completion Hours: 1
      • wger API model page: Actual Completion Hours: 1
      • wger API instance pages and connection to other models: Estimated Completion Hours: 0.5
      • wger API instance pages and connection to other models: Actual Completion Hours: 1
      • wger API testing and filtering data: Estimated Completion Hours: 1
      • wger API testing and filtering data: Actual Completion Hours: 3.5
      • Flask framework: Estimated Completion Hours: 0.5
      • Flask framework: Actual Completion Hours: 1
      • Google Custom Search API integration: Estimated Completion Hours: 1
      • Google Custom Search API integration: Actual Completion Hours: 2
      • About Page Content: Estimated Completion Hours: 0.5
      • About Page Content: Actual Completion Hours: 1.5
    • Phase 2:
      • Pagination on all 3 model pages: Estimated Completion Hours: 3
      • Pagination on all 3 model pages: Actual Completion Hours: 2.5
      • Model Page User Interface with dynamic cards, hovering, better spacing for all 3 model pages: Estimated Completion Hours: 1
      • Model Page User Interface with dynamic cards, hovering, better spacing for all 3 model pages: Actual Completion Hours: 2.5
      • Exercise Model Page repairment (filling in missing description, fix broken image links): Estimated Completion Hours: 1
      • Exercise Model Page repairment (filling in missing description, fix broken image links): Actual Completion Hours: 2
      • Exercise Instance Pages User Interface with Carousel and better UI: Estimated Completion Hours: 1
      • Exercise Instance Pages User Interface with Carousel and better UI: Actual Completion Hours: 0.75
      • Update Exercise Equipment Data Store from Comma-Separated Strings to Array: Estimated Completion Hours: 0.15
      • Update Exercise Equipment Data Store from Comma-Separated Strings to Array: Actual Completion Hours: 0.25
      • Selenium Testing for Exercises Model Page, Instance Pages, and Pagination: Estimated Completion Hours: 1
      • Selenium Testing for Exercises Model Page, Instance Pages, and Pagination: Actual Completion Hours: 1.5
      • Selenium Testing for Homepage Carousel and NavBar: Estimated Completion Hours: 0.5
      • Selenium Testing for Homepage Carousel and NavBar: Actual Completion Hours: 1
      • Updating AboutMe page, Github code integration, Technical Report: Estimated Completion Hours: 0.5
      • Updating AboutMe page, Github code integration, Technical Report: Actual Completion Hours: 1
    • Phase 3:
      • Setup Template and Backend Infrastructure with new JavaScript file for searching/filtering/sorting: Estimated Completion Hours: 0.25
      • Setup Template and Backend Infrastructure with new JavaScript file for searching/filtering/sorting: Actual Completion Hours: 0.5
      • Added Search Bar on NavBar, Dropdown Menu w/ Checkboxes for Filtering, Ascending/Descending Buttons for Sorting across all model pages: Estimated Completion Hours: 1
      • Added Search Bar on NavBar, Dropdown Menu w/ Checkboxes for Filtering, Ascending/Descending Buttons for Sorting across all model pages: Actual Completion Hours: 3
      • New UI/UX design for all pages (homepage, all model + instance pages, about page) on the website: Estimated Completion Hours: 5
      • New UI/UX design for all pages (homepage, all model + instance pages, about page) on the website: Actual Completion Hours: 13
      • Added side navigation bar for filtering and new designs for filtering, sorting, and searching fields: Estimated Completion Hours: 1
      • Added side navigation bar for filtering and new designs for filtering, sorting, and searching fields: Actual Completion Hours: 2.5
      • New UI/UX design for sorting dropdown and updated styling for search menu: Estimated Completion Hours: 0.5
      • New UI/UX design for sorting dropdown and updated styling for search menu: Actual Completion Hours: 1
      • Fixed sidebar issue with bottom elements not showing: Estimated Completion Hours: 0.25
      • Fixed sidebar issue with bottom elements not showing: Actual Completion Hours: 0.75
      • Added styling to search bar: Estimated Completion Hours: 0.5
      • Added styling to search bar: Actual Completion Hours: 1
      • Added Selenium Tests to Exercises model and instance pages: Estimated Completion Hours: 1
      • Added Selenium Tests to Exercises model and instance pages: Actual Completion Hours: 2
    • Phase 4:
      • Presentation Slides: Estimated Completion Hours: 1
      • Presentation Slides: Actual Completion Hours: 2.5
      • Technical Report: Estimated Completion Hours: 2
      • Technical Report: Actual Completion Hours: 3.5
      • Information Hiding in Design Report: Estimated Completion Hours: 1
      • Information Hiding in Design Report: Actual Completion Hours: 2.5
      • Debugging Phase 4 Bugs and Deployment: Estimated Completion Hours: 1
      • Debugging Phase 4 Bugs and Deployment: Actual Completion Hours: 3
Owner
Andrew Wu
Andrew Wu
Fix Eitaa Messenger's Font Problem on Linux

Fix Eitaa Messenger's Font Problem on Linux

6 Oct 15, 2022
BMI-Calculator: Program to Calculate Body Mass Index (BMI)

The Body Mass Index (BMI) or Quetelet index is a value derived from the mass (weight) and height of an individual, male or female.

PyLaboratory 0 Feb 07, 2022
Linux Pressure Stall Information (PSI) Status App

Linux Pressure Stall Information (PSI) Status App psistat is a simple python3 program to display the PSIs and to capture/display exception events. psi

Joe D 3 Sep 18, 2022
Anonymous Dark Web Tool

Anonymous Dark Web Tool v1.0 Features Anonymous Mode Darkweb Search Engines Check Onion Url/s Scanning Host/IP Keep eyes on v2.0 soon. Requirement Deb

Mounib Kamhaz 11 Apr 10, 2022
A simple script that shows important photography times. written in python.

A simple script that shows important photography times. written in python.

John Evans 13 Oct 16, 2022
A tool for checking if the external data used in Flatpak manifests is still up to date

Flatpak External Data Checker This is a tool for checking for outdated or broken links of external data in Flatpak manifests. Motivation Flatpak apps

Flathub 76 Dec 24, 2022
Tool to audit and fix Python project requirements.

Requirement Auditor Utility to revise and updated python requirement files.

Luis Carlos Berrocal 1 Nov 07, 2021
Yet another basic python package.

ironmelts A basic python package. Easy to use. Minimum requirements. Installing Linux python3 -m pip install -U ironmelts macOS python3 -m pip install

IRONMELTS 1 Oct 26, 2021
Simple calculator with random number button and dark gray theme created with PyQt6

Calculator Application Simple calculator with random number button and dark gray theme created with : PyQt6 Python 3.9.7 you can download the dark gra

Flamingo 2 Mar 07, 2022
Data on COVID-19 (coronavirus) cases, deaths, hospitalizations, tests • All countries • Updated daily by Our World in Data

COVID-19 Dataset by Our World in Data Find our data on COVID-19 and its documentation in public/data. Documentation Data: complete COVID-19 dataset Da

Our World in Data 5.5k Jan 03, 2023
EloGGs 🎮 is a 1v1.LOL Trophy Boosting Program (PATCHED)

EloGGs 🎮 is an old patched 1v1.LOL boosting program I developed months ago, My team made around $1000 total off of this, but now it's been patched by the developers.

doop 1 Jul 22, 2022
Small pip update helpers.

pipdate pipdate is a collection of small pip update helpers. The command pipdate # or python3.9 -m pipdate updates all your pip-installed packages. (O

Nico Schlömer 69 Dec 18, 2022
Developing and Comparing Vision-based Algorithms for Vision-based Agile Flight

DodgeDrone: Vision-based Agile Drone Flight (ICRA 2022 Competition) Would you like to push the boundaries of drone navigation? Then participate in the

Robotics and Perception Group 115 Dec 10, 2022
Plugin to generate BOM + CPL files for JLCPCB

KiCAD JLCPCB tools Plugin to generate all files necessary for JLCPCB board fabrication and assembly Gerber files Excellon files BOM file CPL file Furt

bouni 566 Dec 29, 2022
Library for RadiaCode-101

RadiaCode Библиотека для работы с дозиметром RadiaCode-101, находится в разработке - API не стабилен и возможны изменения. Пример использования (backe

Maxim Andreev 56 Nov 29, 2022
Test for using pyIIIFpres for rara magnetica project

raramagnetica_pyIIIFpres Test for using pyIIIFpres for rara magnetica project. This test show how to use pyIIIFpres for creating mannifest compliant t

Giacomo Marchioro 1 Dec 03, 2021
A web project to control the daily life budget planing

Budget Planning - API In this repo there's only the API and Back-End of the this project. Install and run the project # install virtualenv --python=py

Leonardo Da Vinci 1 Oct 24, 2021
Programming labs for 6.S060 (Foundations of Computer Security).

6.S060 Labs This git repository contains the code for the labs in 6.S060. In these labs, you will add a series of security features to a photo-sharing

MIT PDOS 10 Nov 02, 2022
An extension for Arma 3 that lets you write extensions in Python 3

An Arma 3 extension that lets you to write python extensions for Arma 3. And it's really simple and straightforward to use!

Lukasz Taczuk 48 Dec 18, 2022
Pengenalan para anggota KOMPETEGRAM

Pengenalan Anggota KOMPETEGRAM Apa isi repositori ini ? 💬 Repositori ini berisi pengenalan nama anggota KOMPETEGRAM dari seluruh angkatan atau Batch.

Repositori KOMPETEGRAM 7 Sep 17, 2022