A website designed to help people start or continue their fitness journey in various ways, including workout routines, recipes, calorie trackers, and much more designed for each person's wants and needs.
In order to build this project you first have to install:
- Node.js : must be installed from the website.
- MySQL : must be installed from the website.
- React : launched in the command line with the command
-
Set up local database with the mySQL commands in
server/data.sqlfile. -
Create the file
server/.envand add the following:DBUSERNAME= This should be database username used to log in to a mysql serverPASSWORD= This should be database password used to log in to a mysql serverHOST= This should be where the database is hosted on. e.g. localhost if running locallyDBPORT= This should be the port that connects to the database. e.g. 3306
-
Create the file
client/.envand add the following:REACT_APP_SERVERURL= This should be the URL of the backend server. eg. http://localhost:8000 if running locally
-
Run
npm installin the main directory, then in the client folder, and the server folder.
- Run
npm startin the client and server folder
We used Render to deploy our front and back end. The front is deployed as a static site an the back is deployed as a Web Service. https://render.com/
Our database is deployed on Amazon RDS for mySQL. https://aws.amazon.com/rds/mysql/
The current behavorial tests are in /cypress/e2e.
The current unit tests are in /unit.
- Cypress for Behavioral
- Jest for Unit
- Run
npm install cypress --save-devin terminal. - Run
npx cypress openin terminal. - Once Cypress window pops up, select 'E2E Testing'.
- Choose the browser you want the test to run in and click "Start E2E Testing in ...".
- Finally, select the test you want to run and it runs automatically.
- To ensure the all tests function as expected:
- First, clear your local database to ensure all tables are empty. The necessary commands for this can be found in the comments at the beginning of the
RunFirstPopulationTest.cy.jstest. - Next, execute the
RunFirstPopulationTest.cy.jstest. This test initializes the database and generates the necessary data, such as users and workout programs, that subsequent tests depend on for proper execution. - Once the above tasks are completed, you may proceed to run the remaining tests in any order.
- First, clear your local database to ensure all tables are empty. The necessary commands for this can be found in the comments at the beginning of the
- Run
npm install --save-dev jestin terminal. - Run
npx jestornpm testto test all cases
- Alexis Peters : alp12@email.sc.edu
- Anna Phan : aphan@email.sc.edu
- Jacqueline Askey : jaskey@email.sc.edu
- Ashley Myrick : almyrick@email.sc.edu
- Marietou Seck : mseck@email.sc.edu