Skip to content

Commit b0f7f65

Browse files
authored
Merge pull request #1122 from monarch-initiative/issue-1120-home-page-update
Issue 1120 home page update - Move KG tools to header
2 parents c4a5b1d + 6eafa6e commit b0f7f65

File tree

7 files changed

+90
-75
lines changed

7 files changed

+90
-75
lines changed

frontend/src/components/TheHeaderV2.vue

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@
4747
<div class="hero-search-wrapper">
4848
<TabSearch :minimal="true" :header-box="true" :home="home" />
4949
<TheSearchTerms />
50-
5150
<TheSearchSuggestions @select="handleSuggestionClick" />
51+
<TheHeroTools />
5252
</div>
5353
</div>
5454
</div>
@@ -97,6 +97,9 @@
9797
</li>
9898
</template>
9999
</DropdownButton>
100+
<div class="hero-tools">
101+
<TheHeroTools v-if="isMobile" />
102+
</div>
100103
</div>
101104
</nav>
102105

@@ -113,6 +116,7 @@ import TheSearchTerms from "@/components/TheSearchTerms.vue";
113116
import navigationMenus from "@/data/navigationMenu.json";
114117
import { ENTITY_MAP } from "@/data/toolEntityConfig";
115118
import DropdownButton from "./TheDropdownButton.vue";
119+
import TheHeroTools from "./TheHeroTools.vue";
116120
import TheNexus from "./TheNexus.vue";
117121
import TheScrollButton from "./TheScrollButton.vue";
118122
import TheSearchSuggestions from "./TheSearchSuggestions.vue";
@@ -446,7 +450,7 @@ Its here to align with the styling of old nav items. */
446450
width: 80%;
447451
max-width: 68em;
448452
margin: 0 auto;
449-
padding: 3.5em 2em;
453+
padding: 2.5em 2em;
450454
gap: 1.2em;
451455
border-radius: 20px;
452456
background: white;
@@ -455,7 +459,7 @@ Its here to align with the styling of old nav items. */
455459
text-align: center;
456460
transition: box-shadow 0.3s ease;
457461
458-
@media (max-width: 1200px) {
462+
@media (max-width: 1300px) {
459463
padding: 1.8em;
460464
}
461465
}
@@ -473,7 +477,6 @@ Its here to align with the styling of old nav items. */
473477
.hero-header h1 {
474478
color: #333;
475479
font-weight: 600;
476-
font-size: clamp(1.75rem, 5vw, 2.5rem);
477480
font-size: 1.75em;
478481
strong {
479482
display: block;
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
<template>
2+
<hr />
3+
<div class="hero-tool-links">
4+
<p class="hero-tools-label">Knowledge Graph Tools:</p>
5+
<AppLink to="/search-phenotypes">Phenotype Similarity Tools</AppLink>
6+
<span>|</span>
7+
<AppLink to="/text-annotator">Text Annotator</AppLink>
8+
</div>
9+
</template>
10+
11+
<style scoped lang="scss">
12+
$wrap: 1120px;
13+
.hero-tool-links {
14+
display: flex;
15+
flex-wrap: nowrap;
16+
align-items: center;
17+
gap: 0.75rem;
18+
font-size: 1.1em;
19+
white-space: nowrap;
20+
21+
@media (max-width: $wrap) {
22+
flex-wrap: wrap;
23+
margin-top: 0.8rem;
24+
color: $white;
25+
font-size: 0.9em;
26+
white-space: wrap;
27+
}
28+
a {
29+
color: #007c8a;
30+
font-weight: 500;
31+
text-decoration: none;
32+
33+
@media (max-width: $wrap) {
34+
color: $white;
35+
}
36+
&:hover {
37+
text-decoration: underline;
38+
}
39+
}
40+
41+
span {
42+
color: #aaa;
43+
}
44+
h3 {
45+
padding: 0;
46+
47+
@media (max-width: $wrap) {
48+
color: $white;
49+
}
50+
}
51+
}
52+
.hero-tools-label {
53+
font-weight: 500;
54+
text-align: center;
55+
@media (max-width: $wrap) {
56+
color: $white;
57+
}
58+
}
59+
</style>

frontend/src/components/TheScrollButton.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ function scrollToHomePageSection() {
3434

3535
<style scoped>
3636
.scroll-button {
37-
margin-bottom: 2rem;
37+
margin: 1.2rem;
3838
border: none;
3939
border-radius: 50%;
4040
background: white;

frontend/src/data/navigationMenu.json

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,27 @@
4949
"to": "/kg/downloads",
5050
"tooltip": ""
5151
},
52+
{
53+
"label": "API",
54+
"key": "kg-api",
55+
"to": "https://api-v3.monarchinitiative.org/v3/docs",
56+
"tooltip": "",
57+
"icon": true
58+
},
59+
{
60+
"label": "Neo4j",
61+
"key": "about-neo4J",
62+
"to": "https://neo4j.monarchinitiative.org/browser/",
63+
"tooltip": "",
64+
"icon": true
65+
},
66+
{
67+
"label": "Monarch R",
68+
"key": "about-monarchr",
69+
"to": "https://monarch-initiative.github.io/monarchr/articles/monarchr",
70+
"tooltip": "",
71+
"icon": true
72+
},
5273
{
5374
"label": "Status & QC",
5475
"key": "kg-status-qc",
@@ -79,13 +100,6 @@
79100
"to": "/kg/citation",
80101
"tooltip": ""
81102
},
82-
{
83-
"label": "API",
84-
"key": "kg-api",
85-
"to": "https://api-v3.monarchinitiative.org/v3/docs",
86-
"tooltip": "",
87-
"icon": true
88-
},
89103
{
90104
"label": "About the KG",
91105
"key": "about-kg",

frontend/src/data/toolEntityConfig.ts

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -24,44 +24,6 @@ export const ENTITY_MAP: Record<
2424
},
2525
};
2626

27-
export const KG_TOOL_LINKS: {
28-
label: string;
29-
to: string;
30-
icon?: string;
31-
external?: boolean;
32-
tooltip?: string;
33-
}[] = [
34-
{
35-
label: "Phenotype Search",
36-
icon: "tool-phenotype-search",
37-
to: "/search-phenotypes",
38-
tooltip: "Start exploring genes and diseases based on phenotype similarity",
39-
},
40-
{
41-
label: "Text Annotator",
42-
icon: "text-annotator",
43-
to: "/text-annotator",
44-
tooltip:
45-
"Paste or upload text to find references to Monarch Knowledge Graph entities",
46-
},
47-
{
48-
label: "Neo4j",
49-
icon: "neoj",
50-
to: "https://neo4j.monarchinitiative.org/browser/",
51-
tooltip:
52-
"Explore the Monarch Knowledge Graph directly in the Neo4j browser",
53-
external: true,
54-
},
55-
{
56-
label: "Monarch R",
57-
icon: "monarchr",
58-
to: "https://monarch-initiative.github.io/monarchr/articles/monarchr",
59-
tooltip:
60-
"Query and manipulate Monarch KG data in a tidy-inspired R interface",
61-
external: true,
62-
},
63-
];
64-
6527
export const TOOL_LINKS: {
6628
label: string;
6729
to: string;

frontend/src/global/icons.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ const icons = [
9090
fas.faCalendarWeek,
9191
fas.faGraduationCap,
9292
fas.faBookOpenReader,
93+
fas.faWrench,
9394
];
9495

9596
library.add(...icons);

frontend/src/pages/PageHomeV2.vue

Lines changed: 1 addition & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -33,27 +33,11 @@
3333
</div>
3434
</div>
3535
</AppSection>
36-
37-
<AppSection width="big">
38-
<AppHeading :level="1">Explore Knowledge Graph Tools</AppHeading>
39-
<div class="custom-grid kg-tools">
40-
<template v-for="(tool, id) in KG_TOOL_LINKS" :key="id">
41-
<AppToolTile
42-
v-tooltip="tool.tooltip"
43-
:to="tool.to"
44-
:aria-label="tool.tooltip"
45-
:icon="tool.icon"
46-
:title="tool.label"
47-
/>
48-
</template>
49-
</div>
50-
</AppSection>
5136
</template>
5237

5338
<script setup lang="ts">
54-
import AppToolTile from "@/components/AppToolTile.vue";
5539
import PageTitle from "@/components/ThePageTitle.vue";
56-
import { KG_TOOL_LINKS, TOOL_LINKS } from "@/data/toolEntityConfig";
40+
import { TOOL_LINKS } from "@/data/toolEntityConfig";
5741
</script>
5842

5943
<style lang="scss" scoped>
@@ -129,12 +113,4 @@ a:focus,
129113
.icon:focus {
130114
outline: none;
131115
}
132-
133-
.kg-tools {
134-
margin-top: 2.5em;
135-
136-
@media (max-width: 1000px) {
137-
gap: 2.5em;
138-
}
139-
}
140116
</style>

0 commit comments

Comments
 (0)