Skip to content

Commit 831bbb2

Browse files
biraj21Copilot
andcommitted
feat: add shellular
Co-authored-by: Copilot <copilot@github.com>
1 parent 19c8215 commit 831bbb2

3 files changed

Lines changed: 105 additions & 12 deletions

File tree

client/components/announcementBanner/index.js

Lines changed: 28 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,42 @@
11
import './style.scss';
2-
import hpLogo from 'res/hp-logo.png';
2+
import shellularLogo from 'res/shellular-logo.png';
33

44
const BANNERS = [
5+
{
6+
id: 'shellular',
7+
logo: shellularLogo,
8+
url: 'https://shellular.dev',
9+
alt: 'Shellular',
10+
badge: 'NEW',
11+
mobileTitle: 'Shellular - Remote control for your AI agents & terminals',
12+
title: 'Try Shellular',
13+
subtitle: 'Access your Codex, Claude Code, OpenCode, terminals, files, and ports from your phone.',
14+
cta: 'Get now',
15+
theme: 'shellular',
16+
},
517
{
618
id: 'betterkeep',
719
logo: 'https://betterkeep.app/icons/logo.png',
820
url: 'https://betterkeep.app/welcome?utm_source=acode_announcement_banner',
921
alt: 'Better Keep Notes',
1022
badge: 'NEW',
23+
mobileTitle: 'Better Keep Notes - Secure & Private',
1124
title: 'Introducing Better Keep Notes',
1225
subtitle: 'A beautiful, private note-taking app. Try it free!',
1326
cta: 'Learn More',
1427
theme: 'betterkeep',
1528
},
16-
{
17-
id: 'hangingpiece',
18-
logo: hpLogo,
19-
url: 'https://www.hangingpiece.com?utm_source=acode_announcement_banner',
20-
alt: 'Hanging Piece',
21-
badge: 'NEW',
22-
title: 'Hanging Piece - Claude Code for Chess',
23-
subtitle: 'Understand WHY you blundered and HOW to improve!',
24-
cta: 'Try Now',
25-
theme: 'hangingpiece',
26-
},
29+
// {
30+
// id: 'hangingpiece',
31+
// logo: hpLogo,
32+
// url: 'https://www.hangingpiece.com?utm_source=acode_announcement_banner',
33+
// alt: 'Hanging Piece',
34+
// badge: 'NEW',
35+
// title: 'Hanging Piece - Claude Code for Chess',
36+
// subtitle: 'Understand WHY you blundered and HOW to improve!',
37+
// cta: 'Try Now',
38+
// theme: 'hangingpiece',
39+
// },
2740
];
2841

2942
const TOGGLE_INTERVAL = 8000;
@@ -33,6 +46,7 @@ export default function AnnouncementBanner() {
3346

3447
const $logo = <img alt='App Logo' className='announcement-banner__logo' />;
3548
const $badge = <span className='announcement-banner__new-badge' />;
49+
const $mobileTitle = <span className='announcement-banner__mobile-title' />;
3650
const $title = <span className='announcement-banner__title' />;
3751
const $subtitle = <span className='announcement-banner__subtitle' />;
3852
const $ctaText = <span className='announcement-banner__cta-text' />;
@@ -50,6 +64,7 @@ export default function AnnouncementBanner() {
5064
<div className='announcement-banner__logo-wrapper'>{$logo}</div>
5165
<div className='announcement-banner__text'>
5266
{$badge}
67+
{$mobileTitle}
5368
{$title}
5469
{$subtitle}
5570
</div>
@@ -110,6 +125,7 @@ export default function AnnouncementBanner() {
110125
$logo.src = b.logo;
111126
$logo.alt = b.alt;
112127
$badge.textContent = b.badge;
128+
$mobileTitle.textContent = b.mobileTitle || b.title;
113129
$title.textContent = b.title;
114130
$subtitle.textContent = b.subtitle;
115131
$ctaText.textContent = b.cta;

client/components/announcementBanner/style.scss

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,65 @@
4949
}
5050
}
5151

52+
&--shellular {
53+
background: linear-gradient(135deg,
54+
#08090b 0%,
55+
#0d0d0f 24%,
56+
#18181b 56%,
57+
#1b1b1f 100%);
58+
border-bottom-color: rgba(214, 194, 161, 0.18);
59+
60+
.announcement-banner__new-badge {
61+
background: linear-gradient(135deg, #f1c98d, #d6c2a1);
62+
color: #140f0a;
63+
box-shadow: 0 2px 10px rgba(214, 194, 161, 0.35);
64+
}
65+
66+
.announcement-banner__title {
67+
color: #f5f1e8;
68+
}
69+
70+
.announcement-banner__mobile-title {
71+
color: #f5f1e8;
72+
}
73+
74+
.announcement-banner__subtitle {
75+
color: rgba(245, 241, 232, 0.78);
76+
}
77+
78+
.announcement-banner__cta {
79+
background: linear-gradient(135deg, #d6c2a1, #8a745c);
80+
color: #140f0a;
81+
box-shadow: 0 4px 15px rgba(138, 116, 92, 0.3);
82+
}
83+
84+
.announcement-banner__logo-wrapper {
85+
background: rgba(214, 194, 161, 0.12);
86+
box-shadow: 0 4px 15px rgba(20, 15, 10, 0.35);
87+
}
88+
89+
.announcement-banner__indicator.active {
90+
background: #f1c98d;
91+
box-shadow: 0 0 12px rgba(241, 201, 141, 0.5);
92+
}
93+
94+
.announcement-banner__close {
95+
background: rgba(214, 194, 161, 0.12);
96+
97+
.icon {
98+
color: rgba(245, 241, 232, 0.82);
99+
}
100+
101+
&:hover {
102+
background: rgba(214, 194, 161, 0.24);
103+
104+
.icon {
105+
color: #f5f1e8;
106+
}
107+
}
108+
}
109+
}
110+
52111
&::before {
53112
content: '';
54113
position: absolute;
@@ -230,6 +289,14 @@
230289
letter-spacing: 0.3px;
231290
}
232291

292+
&__mobile-title {
293+
display: none;
294+
color: #fff;
295+
font-size: 0.9rem;
296+
font-weight: 600;
297+
letter-spacing: 0.2px;
298+
}
299+
233300
&__subtitle {
234301
color: rgba(255, 255, 255, 0.7);
235302
font-size: 0.85rem;
@@ -315,6 +382,12 @@
315382
}
316383

317384
&__title {
385+
display: none;
386+
font-size: 0.85rem;
387+
}
388+
389+
&__mobile-title {
390+
display: inline;
318391
font-size: 0.85rem;
319392
}
320393

@@ -354,6 +427,10 @@
354427
font-size: 0.8rem;
355428
}
356429

430+
&__mobile-title {
431+
font-size: 0.8rem;
432+
}
433+
357434
&__cta {
358435
padding: 5px 10px;
359436
font-size: 0.7rem;

client/res/shellular-logo.png

20.8 KB
Loading

0 commit comments

Comments
 (0)