Skip to content

Commit 8fea555

Browse files
committed
feat: site footer
1 parent 84bf133 commit 8fea555

File tree

7 files changed

+231
-28
lines changed

7 files changed

+231
-28
lines changed

assets/scss/theme/theme.scss

+9
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,15 @@ code {
1717
font-family: $fontSuisseIntlMono;
1818
}
1919

20+
a {
21+
@include b2;
22+
color: $chardonnay;
23+
@include transitionDefault;
24+
&:hover {
25+
color: $alto;
26+
}
27+
}
28+
2029
///////////////////////////////////////////////////////////////////// Components
2130
// -----------------------------------------------------------------------------
2231
/*

components/blocks/block-builder.vue

+1
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ export default {
128128
width: 100%;
129129
}
130130
.sectional {
131+
position: relative;
131132
padding: 5rem 0;
132133
}
133134
</style>

components/data-programs-logo.vue

+79-26
Large diffs are not rendered by default.

components/site-footer.vue

+115-2
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,131 @@
11
<template>
22
<footer id="site-footer">
33

4-
This is a footer
4+
<div class="panel-top">
5+
<div class="grid-bottom-noBottom-noGutter">
6+
7+
<div class="col-2">
8+
<nuxt-link to="/" class="site-footer-logo">
9+
<SiteFooterLogo />
10+
</nuxt-link>
11+
</div>
12+
13+
<div class="col-4" data-push-left="off-6">
14+
<div class="authors">
15+
<div
16+
class="text"
17+
v-html="authors.text">
18+
</div>
19+
<div class="logos">
20+
<ZeroButton to="https://dataprograms.org/" tag="a">
21+
<DataProgramsLogo />
22+
</ZeroButton>
23+
<ZeroButton to="https://protocol.ai/" tag="a">
24+
<ProtocolLabsLogo />
25+
</ZeroButton>
26+
</div>
27+
</div>
28+
</div>
29+
30+
</div>
31+
</div>
32+
33+
<div class="panel-bottom">
34+
<div class="grid-bottom-noBottom-noGutter">
35+
36+
<div class="col-3">
37+
<!-- dummy div -->
38+
</div>
39+
40+
<div class="col-4">
41+
<div class="legal">
42+
<ZeroButton
43+
v-for="link in legal.links"
44+
:key="link.text"
45+
:to="link.to"
46+
:tag="link.tag"
47+
class="footer-button">
48+
{{ link.text }}
49+
</ZeroButton>
50+
</div>
51+
</div>
52+
53+
</div>
54+
</div>
555

656
</footer>
757
</template>
858

59+
<script setup>
60+
// ===================================================================== Imports
61+
import GeneralSiteData from '@/content/core/general.json'
62+
63+
// ==================================================================== Computed
64+
const authors = computed(() => {
65+
return GeneralSiteData.footer.authors
66+
})
67+
68+
const legal = computed(() => {
69+
return GeneralSiteData.footer.legal
70+
})
71+
72+
</script>
73+
974
<style lang="scss" scoped>
1075
// ///////////////////////////////////////////////////////////////////// General
1176
#site-footer {
77+
position: relative;
1278
display: flex;
1379
flex-direction: column;
1480
justify-content: center;
1581
align-items: center;
16-
height: 5rem;
82+
padding: toRem(34) 0;
83+
}
84+
85+
.site-footer-logo {
86+
:deep(svg) {
87+
@include transitionDefault;
88+
&:hover {
89+
transform: scale(1.08);
90+
}
91+
}
92+
}
93+
94+
.authors {
95+
.text {
96+
@include formFieldText;
97+
margin-bottom: toRem(28);
98+
}
99+
.logos {
100+
display: flex;
101+
:deep(.button) {
102+
@include transitionDefault;
103+
&:not(:last-child) {
104+
margin-right: toRem(43);
105+
}
106+
&:hover {
107+
transform: scale(1.08);
108+
}
109+
}
110+
}
111+
}
112+
113+
.legal {
114+
transform: translateY(-100%);
115+
}
116+
117+
.footer-button {
118+
position: relative;
119+
padding: toRem(6) 0;
120+
@include footerButton;
121+
color: $sageGreen;
122+
@include transitionDefault;
123+
border-bottom: solid 1px rgba($sageGreen, 0);
124+
&:not(:last-child) {
125+
margin-right: toRem(47);
126+
}
127+
&:hover {
128+
border-bottom: solid 1px rgba($sageGreen, 1);
129+
}
17130
}
18131
</style>

content/core/general.json

+24
Original file line numberDiff line numberDiff line change
@@ -55,5 +55,29 @@
5555
"target": "_blank"
5656
}
5757
]
58+
},
59+
"footer": {
60+
"authors": {
61+
"text": "Singularity is a project developed by the <a href='https://dataprograms.org/' target='_blank'>Data Programs Working Group</a> with Protocol Labs"
62+
},
63+
"legal": {
64+
"links": [
65+
{
66+
"text": "Terms of Use",
67+
"tag": "a",
68+
"to": "https://protocol.ai/legal/#terms-of-service"
69+
},
70+
{
71+
"text": "Privacy Policy",
72+
"tag": "a",
73+
"to": "https://protocol.ai/legal/#privacy-policy"
74+
},
75+
{
76+
"text": "DMCA Policy",
77+
"tag": "a",
78+
"to": "https://ipfs.tech/legal"
79+
}
80+
]
81+
}
5882
}
5983
}

content/core/index.json

+3
Original file line numberDiff line numberDiff line change
@@ -328,6 +328,9 @@
328328
"img": "/images/summit-graphic.svg",
329329
"heading": "Roadmap"
330330
}
331+
},
332+
{
333+
"id": "section-subfooter"
331334
}
332335
]
333336
}

0 commit comments

Comments
 (0)