Skip to content

Commit

Permalink
Merge pull request #377 from MoTrPAC/375_JZ_Project_Overivew_Exercise…
Browse files Browse the repository at this point in the history
…_Benefits

Connects to #374. Connects to #375. New components for exercise benefits and PASS1B-06 asasy-tissue mappings.
  • Loading branch information
jimmyzhen authored Nov 13, 2024
2 parents ddf21e0 + 99c707e commit 3237f0a
Show file tree
Hide file tree
Showing 26 changed files with 1,740 additions and 39 deletions.
3 changes: 3 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
"dayjs": "1.11.7",
"from-exponential": "^1.1.1",
"ga-gtag": "1.2.0",
"highcharts": "^11.4.8",
"highcharts-react-official": "^3.2.1",
"history": "4.10.1",
"http-proxy-middleware": "^2.0.1",
"jquery": "^3.5.1",
Expand All @@ -32,6 +34,7 @@
"react-scripts": "5.0.1",
"react-table": "^7.7.0",
"react-tooltip": "^5.11.2",
"react-wordcloud": "^1.2.7",
"redux": "^4.0.1",
"redux-thunk": "^2.3.0",
"tocbot": "^4.25.0",
Expand Down
23 changes: 20 additions & 3 deletions src/App/App.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,12 @@ import SearchPageConnected from '../Search/searchPage';
import GeneCentricViewConnected from '../AnalysisPage/GeneCentricViewRat/geneCentricViewPage';
import GraphicalClustering from '../AnalysisPage/GraphicalClustering/graphicalClusteringPage';
import CodeRepositories from '../CodeRepoPage/codeRepoPage';
import MainStudyConnected from '../MainStudy/mainStudy';
import ProjectOverviewConnected from '../MainStudy/overview';
import ExerciseBenefits from '../MainStudy/exerciseBenefits';
import StudyAssays from '../MainStudy/studyAssays';
import Tutorials from '../Tutorials/tutorials';
import License from '../License/licensePage';
import DataDeposition from '../DataDeposition/dataDepositionPage';
import Publications from '../Publications/publications';
import MultiOmicsWorkingGroups from '../MultiOmicsWorkingGroups/multiOmicsWorkingGroups';
import FullTableEnduranceTraining from '../Publications/Data/Animal/Phenotype/fullTableEnduranceTraining';
Expand Down Expand Up @@ -134,9 +138,22 @@ function App({ history = History }) {
/>
<Route
path="/project-overview"
component={withTracker(MainStudyConnected)}
component={withTracker(ProjectOverviewConnected)}
/>
<Route
path="/exercise-benefits"
component={withTracker(ExerciseBenefits)}
/>
<Route
path="/study-assays"
component={withTracker(StudyAssays)}
/>
<Route path="/tutorials" component={withTracker(Tutorials)} />
<Route path="/license" component={withTracker(License)} />
<Route
path="/data-deposition"
component={withTracker(DataDeposition)}
/>
<Route
path="/publications"
exact
Expand All @@ -158,8 +175,8 @@ function App({ history = History }) {
</Switch>
</div>
</div>
<Footer />
</Router>
<Footer />
</Provider>
);
}
Expand Down
4 changes: 2 additions & 2 deletions src/App/__test__/App.test.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ describe('<App />', () => {
});

test('It should contain fifteen <Route /> children', () => {
expect(component.find('Route').length).toBe(21);
expect(component.find('Route').length).toBe(25);
});

test('It should contain four <PrivateRoute /> children', () => {
Expand Down Expand Up @@ -81,7 +81,7 @@ describe('Unauthenticated Application routing', () => {
test('loads the browse data page at /project-overview', () => {
history.push('/project-overview');
mountApp.update();
testCorrectComponentInPath(mountApp, 'Route', 'MainStudy', '/project-overview', history);
testCorrectComponentInPath(mountApp, 'Route', 'ProjectOverview', '/project-overview', history);
});

test('loads the linkout page at /external-links', () => {
Expand Down
7 changes: 5 additions & 2 deletions src/BrowseDataPage/components/dataDownloadsMain.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,11 @@ function DataDownloadsMain({
<p className="lead mb-2">
Explore and download the MoTrPAC multi-omics datasets, which
includes quantitative results and analyses of molecular changes from
exercise across tissues. Currently, the complete young rat endurance
training dataset is publicly available.
exercise across tissues. Currently, the complete young adult rat endurance
training dataset is publicly available and provided under the
{' '}
<Link to="/license">CC BY 4.0 license</Link>
.
{' '}
{userType && userType === 'internal'
? 'The young rat acute exercise and human precovid sedentary adult datasets are currently available to consortium members only in the early preview phase. '
Expand Down
20 changes: 18 additions & 2 deletions src/CodeRepoPage/codeRepoPage.jsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import React from 'react';
import { Link } from 'react-router-dom';
import { Helmet } from 'react-helmet';
import PageTitle from '../lib/ui/pageTitle';
import IconSet from '../lib/iconSet';
import ExternalLink from '../lib/ui/externalLink';

const repositories = {
pipelines: [
Expand Down Expand Up @@ -102,10 +104,24 @@ export function CodeRepositories() {
<PageTitle title="Code Repositories" />
<div className="code-repo-content-container">
<div className="code-repo-summary-container row">
<div className="lead col-12">
<p className="lead col-12">
Explore the source codes integral to the workflow of the MoTrPAC
data, from ingestion to analysis.
</div>
</p>
<p className="lead col-12">
The MoTrPAC open source repositories are hosted on GitHub and
provided under the
{' '}
<ExternalLink
to="https://opensource.org/license/mit"
label="MIT License"
/>
. The data available through the MoTrPAC Data Hub portal is
provided under the
{' '}
<Link to="/license">CC BY 4.0 license</Link>
.
</p>
</div>
<div className="code-repo-content-container d-flex align-items-start justify-content-between">
{renderRepoComponent('Pipelines', repositories.pipelines)}
Expand Down
191 changes: 191 additions & 0 deletions src/DataDeposition/dataDepositionPage.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,191 @@
import React from 'react';
import { Helmet } from 'react-helmet';
import PageTitle from '../lib/ui/pageTitle';
import ExternalLink from '../lib/ui/externalLink';

function DataDeposition() {
return (
<div className="dataDepositionPage px-3 px-md-4 mb-3 container">
<Helmet>
<html lang="en" />
<title>Data Deposition at Public Repositories - MoTrPAC Data Hub</title>
</Helmet>
<PageTitle title="Data Deposition at Public Repositories" />
<div className="data-deposition-content-container row mb-4">
<div className="col-12">
<p className="lead">
Aside from being made available through the Data Hub portal, the MoTrPAC
animal study data have also been submitted to a number of public
repositories. Below is an overview of each dataset type and the public
repositories to which the data have been submitted.
</p>
{/* Epigenomics and transcriptomics data deposition table */}
<h4 className="mt-4">Epigenomics and Transcriptomics</h4>
<div className="table-responsive">
<table className="table table-bordered">
<thead>
<tr>
<th>Repository</th>
<th>Data type</th>
<th>Accession</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<ExternalLink to="https://www.ncbi.nlm.nih.gov/sra" label="SRA" />
</td>
<td>Raw data</td>
<td>
<ExternalLink to="https://www.ncbi.nlm.nih.gov/bioproject/PRJNA908279" label="PRJNA908279" />
</td>
</tr>
<tr>
<td>
<ExternalLink to="https://www.ncbi.nlm.nih.gov/geo/" label="GEO" />
</td>
<td>
Processed pipeline outputs (e.g., raw counts, merged peakset, bismark
coverage files)
</td>
<td>
<ExternalLink to="https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE242358" label="GSE242358" />
</td>
</tr>
</tbody>
</table>
</div>
{/* Immunoassay data deposition table */}
<h4 className="mt-4">Immunoassays</h4>
<div className="table-responsive">
<table className="table table-bordered">
<thead>
<tr>
<th>Repository</th>
<th>Data type</th>
<th>Accession</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<ExternalLink to="https://www.immport.org/home" label="IMMPORT" />
</td>
<td>Readouts, results</td>
<td>
<ExternalLink to="https://immport.org/shared/study/SDY2193" label="SDY2193" />
</td>
</tr>
</tbody>
</table>
</div>
{/* Metabolomics data deposition table */}
<h4 className="mt-4">Metabolomics (Targeted and Untargeted)</h4>
<div className="table-responsive">
<table className="table table-bordered">
<thead>
<tr>
<th>Repository</th>
<th>Data type</th>
<th>Project</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<ExternalLink to="https://www.metabolomicsworkbench.org/" label="Metabolomics Workbench" />
</td>
<td>Metabolomics raw + results files (identification and quantification)</td>
<td>
<ul className="list-unstyled">
<li>
<ExternalLink to="https://www.metabolomicsworkbench.org/data/DRCCMetadata.php?Mode=Project&ProjectID=PR001020" label="PR001020" />
</li>
<li>
<ExternalLink to="http://dx.doi.org/10.21228/M8V97D" label="DOI: 10.21228/M8V97D" />
</li>
</ul>
</td>
</tr>
</tbody>
</table>
</div>
{/* Proteomics data deposition table */}
<h4 className="mt-4">Proteomics</h4>
<div className="table-responsive">
<table className="table table-bordered">
<thead>
<tr>
<th>Repository</th>
<th>Data type</th>
<th>Metadata</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<ExternalLink to="https://massive.ucsd.edu/ProteoSAFe/static/massive.jsp" label="MassIVE" />
</td>
<td>
<ul className="proteomics-data-submissions">
<li>
<span>
Global Protein Abundance in Gastrocnemius, White Adipose, Cortex,
Lung, and Kidney
</span>
<span className="text-muted ml-1">(Dataset ID: MSV000092911)</span>
</li>
<li>
<span>
Protein Phosphorylation in Gastrocnemius, White Adipose Tissue,
Cortex, Lung, and Kidney
</span>
<span className="text-muted ml-1">(Dataset ID: MSV000092925)</span>
</li>
<li>
<span>
Global Protein Abundance in Heart and Liver
</span>
<span className="text-muted ml-1">(Dataset ID: MSV000092922)</span>
</li>
<li>
<span>
Protein Acetylation in Heart and Liver
</span>
<span className="text-muted ml-1">(Dataset ID: MSV000092924)</span>
</li>
<li>
<span>
Protein Phosphorylation in Heart and Liver
</span>
<span className="text-muted ml-1">(Dataset ID: MSV000092923)</span>
</li>
<li>
<span>
Protein Ubiquitination in Heart and Liver
</span>
<span className="text-muted ml-1">(Dataset ID: MSV000092931)</span>
</li>
</ul>
</td>
<td>
<ul className="list-unstyled">
<li>
<ExternalLink to="https://drive.google.com/file/d/1d7etTfATHkATuOXM3SuLV7IwrpFJlYS0/view?usp=drive_link" label="Results files" />
</li>
<li>
<ExternalLink to="https://docs.google.com/document/d/1Kj81cOGdDUCYos7FRwHx8bBxY6Hs7EINDJ4I7zflMOM/edit?usp=drive_link" label="Methods" />
</li>
</ul>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
);
}

export default DataDeposition;
15 changes: 12 additions & 3 deletions src/Footer/footer.jsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import React from 'react';
import { Link } from 'react-router-dom';

/**
* Renders the global footer.
Expand Down Expand Up @@ -42,9 +43,17 @@ function Footer() {
</span>
</div>
<div className="footer-content">
&#169;
{getCopyrightYear()}
&nbsp;Stanford University
<span className="mr-2">
&#169;
{getCopyrightYear()}
&nbsp;Stanford University
</span>
<span className="mr-2">
<Link to="/license">License</Link>
</span>
<span>
<Link to="/contact">Contact</Link>
</span>
</div>
</div>
</footer>
Expand Down
40 changes: 40 additions & 0 deletions src/License/licensePage.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import React from 'react';
import { Helmet } from 'react-helmet';
import PageTitle from '../lib/ui/pageTitle';
import ExternalLink from '../lib/ui/externalLink';

function License() {
return (
<div className="licensePage px-3 px-md-4 mb-3 container">
<Helmet>
<html lang="en" />
<title>MoTrPAC Data License - MoTrPAC Data Hub</title>
</Helmet>
<PageTitle title="MoTrPAC Data License" />
<div className="license-content-container row mb-4">
<div className="col-12">
<p className="lead">
The data available through the MoTrPAC Data Hub portal is provided
under the Creative Commons Attribution 4.0 International License
(CC BY 4.0). This license allows users to use, share, adapt, distribute,
and reproduce the data in any medium or format, provided appropriate
credit is given to the original author(s) and the source, a link to the
Creative Commons license is included, and any modifications are clearly
indicated.
</p>
<p className="lead">
To view the full terms of this license, please visit Creative Commons
Attribution 4.0 International License (CC BY 4.0) at
{' '}
<ExternalLink
to="https://creativecommons.org/licenses/by/4.0/"
label="https://creativecommons.org/licenses/by/4.0/"
/>
</p>
</div>
</div>
</div>
);
}

export default License;
Loading

0 comments on commit 3237f0a

Please sign in to comment.