Skip to content

Commit 854cedf

Browse files
authored
Merge pull request #1811 from anatoliykmetyuk/scala-days-promo-button
Add Scala Days 2025 promotion button to the front page
2 parents 9e42bab + ea37e1d commit 854cedf

17 files changed

+448
-4
lines changed

_data/scala-days-sponsors.yml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Sponsors Data
2+
# ----------------------------------------------------------------------------------------------------------
3+
# ----------------------------------------------------------------------------------------------------------
4+
5+
sponsorship-types:
6+
- title: Platinum
7+
icon: img/assets/icon-platinum.svg
8+
- title: Gold
9+
icon: img/assets/icon-gold.svg
10+
11+
sponsors:
12+
- title: VirtusLab
13+
type: Platinum
14+
logo: /resources/img/scala-days-sponsors/virtuslab.png
15+
url: https://virtuslab.com
16+
17+
- title: Signify Technology
18+
type: Platinum
19+
logo: /resources/img/scala-days-sponsors/signify.png
20+
url: https://www.signifytechnology.com/
21+
22+
- title: Gradle
23+
type: Gold
24+
logo: /resources/img/scala-days-sponsors/gradle.png
25+
url: https://gradle.com/
26+
27+
- title: JetBrains
28+
type: Gold
29+
logo: /resources/img/scala-days-sponsors/jetbrains.svg
30+
url: https://jetbrains.com
31+
32+
- title: Scalac
33+
type: Gold
34+
logo: /resources/img/scala-days-sponsors/scalac.svg
35+
url: https://scalac.io
36+
37+
- title: Xebia
38+
type: Gold
39+
logo: /resources/img/scala-days-sponsors/xebia.svg
40+
url: https://xebia.com
41+
42+
- title: Writer
43+
type: Gold
44+
logo: /resources/img/scala-days-sponsors/writer.svg
45+
url: https://writer.com

_includes/scala-days-countdown.html

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<section id="countdown-clock-2025" class="scala-days-countdown">
2+
<div class="countdown-content">
3+
<div class="countdown-left">
4+
<a href="https://www.scaladays.org/tickets" class="countdown-register-btn">Learn More & Register Today</a>
5+
<div class="countdown-heading">Bringing Scala Days in...</div>
6+
</div>
7+
<div class="countdown-right">
8+
<div class="countdown-timer">
9+
<div class="countdown-segment">
10+
<span id="2025-day" class="countdown-value"></span>
11+
<span class="countdown-label">DAYS</span>
12+
</div>
13+
<div class="countdown-segment">
14+
<span id="2025-hour" class="countdown-value"></span>
15+
<span class="countdown-label">HOURS</span>
16+
</div>
17+
<div class="countdown-segment">
18+
<span id="2025-minute" class="countdown-value"></span>
19+
<span class="countdown-label">MINUTES</span>
20+
</div>
21+
</div>
22+
</div>
23+
</div>
24+
</section>

_includes/scala-days-sponsors.html

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<div class="scala-days-sponsors-bar">
2+
<!-- Brought to you by -->
3+
<div class="sponsors-brought-to-you-by">
4+
Scala Days 2025 is brought to you by:
5+
</div>
6+
7+
<!-- Static Platinum Sponsors Row -->
8+
<div class="sponsors-static-row">
9+
{% for sponsor in site.data.scala-days-sponsors.sponsors %}
10+
{% if sponsor.type == 'Platinum' %}
11+
<a href="{{ sponsor.url }}" class="sponsor-logo-link-platinum" target="_blank" rel="noopener">
12+
<img src="{{ sponsor.logo }}" alt="{{ sponsor.title }}" class="sponsor-logo-platinum" />
13+
</a>
14+
{% endif %}
15+
{% endfor %}
16+
</div>
17+
<!-- Scrolling Track for Non-Platinum Sponsors -->
18+
<div class="sponsors-carousel">
19+
<div class="sponsors-track" id="sponsors-track">
20+
{% for i in (1..10) %}
21+
{% for sponsor in site.data.scala-days-sponsors.sponsors %}
22+
{% unless sponsor.type == 'Platinum' %}
23+
<a href="{{ sponsor.url }}" class="sponsor-logo-link" target="_blank" rel="noopener">
24+
<img src="{{ sponsor.logo }}" alt="{{ sponsor.title }}" class="sponsor-logo" />
25+
</a>
26+
{% endunless %}
27+
{% endfor %}
28+
{% endfor %}
29+
</div>
30+
</div>
31+
</div>

_layouts/frontpage.html

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616
</p>
1717
<span class="hide"><i class="fa fa-close"></i></span>
1818
</div>
19+
{% include scala-days-countdown.html %}
20+
{% include scala-days-sponsors.html %}
1921
<div class="wrap">
2022
<!-- Navigation -->
2123
<nav class="navigation" role="menu">
@@ -50,7 +52,7 @@ <h2>{{page.headerSubtitle}}</h2>
5052
{% if release.category == 'current_version' %}
5153
{% if version_slice == '3.' %}
5254
{% unless release.title contains "LTS" %}
53-
{% assign scala_next_release = release %}
55+
{% assign scala_next_release = release %}
5456
{% endunless %}
5557
{% if release.title contains "LTS" %}
5658
{% assign scala_lts_release = release %}
@@ -83,6 +85,7 @@ <h2>{{page.headerSubtitle}}</h2>
8385
</div>
8486
</div>
8587
</div>
88+
8689
<!-- Scala Main Resources -->
8790
<div class="scala-main-resources">
8891
<div class="wrap">

_sass/components/countdown.scss

Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
// COUNT DOWN FOR SCALA DAYS 2025
2+
//------------------------------------------------
3+
//------------------------------------------------
4+
5+
#countdown-clock-2025 {
6+
width: 100%;
7+
min-height: 120px;
8+
background: #1793b1 url("/resources/img/scala-logo-large.svg") no-repeat center center;
9+
position: relative;
10+
display: flex;
11+
align-items: center;
12+
justify-content: center;
13+
margin: 0 auto 0 auto;
14+
overflow: hidden;
15+
}
16+
17+
.countdown-content {
18+
display: flex;
19+
width: 100%;
20+
max-width: 1600px;
21+
align-items: center;
22+
justify-content: space-between;
23+
padding: 1.2em 1.5em 1.2em 1.5em;
24+
}
25+
26+
.countdown-left {
27+
display: flex;
28+
flex-direction: column;
29+
align-items: flex-start;
30+
flex: 1 1 0;
31+
z-index: 2;
32+
}
33+
34+
.countdown-register-btn {
35+
display: inline-block;
36+
color: #fff;
37+
border: 2px solid #fff;
38+
background: transparent;
39+
font-size: 1em;
40+
font-weight: 400;
41+
padding: 0.4em 1.5em;
42+
border-radius: 2px;
43+
margin-bottom: 0.7em;
44+
text-decoration: none;
45+
transition: background 0.2s, color 0.2s;
46+
}
47+
.countdown-register-btn:hover {
48+
background: #fff;
49+
color: #c32d1c;
50+
}
51+
52+
.countdown-heading {
53+
color: #fff;
54+
font-size: 1.2em;
55+
font-weight: 700;
56+
letter-spacing: 0.01em;
57+
}
58+
59+
.countdown-right {
60+
display: flex;
61+
align-items: center;
62+
justify-content: flex-end;
63+
flex: 1 1 0;
64+
z-index: 2;
65+
}
66+
67+
.countdown-timer {
68+
display: flex;
69+
gap: 1.5em;
70+
}
71+
72+
.countdown-segment {
73+
display: flex;
74+
flex-direction: column;
75+
align-items: center;
76+
}
77+
78+
.countdown-value {
79+
color: #fff;
80+
font-size: 2.2em;
81+
font-weight: 700;
82+
line-height: 1;
83+
}
84+
85+
.countdown-label {
86+
color: #fff;
87+
font-size: 0.8em;
88+
font-weight: 400;
89+
text-transform: uppercase;
90+
margin-top: 0.1em;
91+
letter-spacing: 0.05em;
92+
}
93+
94+
@media (max-width: 900px) {
95+
.countdown-content {
96+
flex-direction: column;
97+
align-items: center;
98+
padding: 1em 0.5em;
99+
}
100+
.countdown-left, .countdown-right {
101+
align-items: center;
102+
justify-content: center;
103+
width: 100%;
104+
text-align: center;
105+
}
106+
.countdown-timer {
107+
gap: 0.7em;
108+
}
109+
.countdown-heading {
110+
font-size: 1em;
111+
}
112+
.countdown-value {
113+
font-size: 1.3em;
114+
}
115+
}
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
// SCALA DAYS 2025 SPONSORS
2+
//------------------------------------------------
3+
//------------------------------------------------
4+
5+
.scala-days-sponsors-bar {
6+
width: 100%;
7+
overflow: hidden;
8+
background: rgba(30, 40, 50, 0.2);
9+
padding: 1em 0;
10+
position: relative;
11+
}
12+
13+
.sponsors-carousel {
14+
width: 100%;
15+
overflow: hidden;
16+
position: relative;
17+
white-space: nowrap;
18+
}
19+
20+
.sponsors-track {
21+
display: flex;
22+
flex-direction: row;
23+
align-items: center;
24+
white-space: nowrap;
25+
width: max-content;
26+
animation: sponsors-scroll 120s linear infinite;
27+
will-change: transform;
28+
}
29+
30+
.sponsor-logo-link {
31+
display: flex;
32+
align-items: center;
33+
justify-content: center;
34+
width: 140px;
35+
height: 48px;
36+
margin: 0 1em;
37+
flex: 0 0 auto;
38+
}
39+
40+
.sponsor-logo {
41+
max-height: 40px;
42+
max-width: 120px;
43+
width: auto;
44+
height: auto;
45+
filter: brightness(0) invert(1);
46+
opacity: 0.92;
47+
transition: opacity 0.2s;
48+
display: block;
49+
margin: 0 auto;
50+
}
51+
.sponsor-logo-link:hover .sponsor-logo {
52+
opacity: 1;
53+
}
54+
55+
.sponsors-static-row {
56+
display: flex;
57+
flex-direction: row;
58+
align-items: flex-end;
59+
width: max-content;
60+
margin-left: auto;
61+
margin-right: auto;
62+
gap: 3em;
63+
margin-bottom: 1em;
64+
}
65+
66+
.sponsor-logo-link-platinum {
67+
display: flex;
68+
align-items: center;
69+
justify-content: center;
70+
}
71+
72+
.sponsor-logo-platinum {
73+
max-height: 80px !important;
74+
filter: brightness(0) invert(1);
75+
opacity: 0.92;
76+
transition: opacity 0.2s;
77+
}
78+
79+
.sponsors-brought-to-you-by {
80+
font-size: 1.2em;
81+
font-weight: 600;
82+
color: #fff;
83+
margin-bottom: 1em;
84+
text-align: center;
85+
}
86+
87+
@keyframes sponsors-scroll {
88+
0% { transform: translateX(0); }
89+
100% { transform: translateX(-50%); }
90+
}
91+
92+
@media (max-width: 700px) {
93+
.sponsor-logo-link {
94+
width: 80px;
95+
height: 28px;
96+
margin: 0 0.5em;
97+
}
98+
.sponsor-logo {
99+
max-height: 24px;
100+
max-width: 60px;
101+
}
102+
}

_sass/layout/navigation.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
text-decoration: none;
5252
}
5353
}
54+
5455
}
5556
}
5657
}

resources/css/style.scss

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,3 +76,5 @@
7676
@import 'components/tab';
7777
@import 'components/tag';
7878
@import 'components/search';
79+
@import 'components/countdown';
80+
@import 'components/scala-days-sponsors';
19.7 KB
Loading
Lines changed: 13 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)