...
Here's the file structure tree for the project. Note, the structure starts at the src folder found in the dashboard-frontend folder.
📦src
┣ 📂actions
┃ ┣ 📜auth.js Login/register/logout functions
┃ ┣ 📜message.js Response from API calls
┃ ┗ 📜types.js Type of actions being performed
┣ 📂components
┃ ┣ 📂Graphs
┃ ┃ ┣ 📜BabyGraph.js Generate metabolite and microbiome line graphs
┃ ┃ ┣ 📜SampleGraph.js Generate metabolite and microbiome bar graphs
┃ ┃ ┗ 📜SummaryDemographicGraph.js Generate summary demographic bar graphs
┃ ┣ 📂Tables
┃ ┃ ┣ 📜BabyTable.js Generate table for samples grouped by baby
┃ ┃ ┣ 📜DemographicTable.js Generate table for Qualtrics Demographics data
┃ ┃ ┣ 📜SampleTable.js Generate table for sample data
┃ ┃ ┣ 📜SummaryDemographicTable.js Generate table for Qualtrics Summary Demographics data
┃ ┣ 📜PrivateRoute.js Limit access when user is not logged in
┣ 📂reducers
┃ ┣ 📜auth.js Updates isLoggedIn and user state
┃ ┣ 📜index.js Combines message and auth reducers
┃ ┗ 📜message.js Updates message state when a message action is dispatched
┣ 📂services
┃ ┣ 📜AuthService.js API calls to login/register/logout
┃ ┗ 📜store.js Bring actions and reducers together and hold the app state
┣ 📂views
┃ ┣ 📜Index.js Home page for dashboard
┃ ┣ 📜LoginPage.js Page for user to login to dashboard
┃ ┣ 📜RegisterPage.js Page for user to register for an account
┃ ┣ 📜ResetPasswordPage.js Page for user to reset the password
┃ ┣ 📜Upload.js Page for user to upload a file
┃ ┗ 📜Visualize.js Page for Sample, Baby, Demographics, and Summary Demographics tables
┣ 📜index.js Root that acts as a container for all other components
┗ 📜routes.js Define routes to keep the URL in sync with the UI