Skip to content

Commit 6f7d79b

Browse files
committed
featurescapsule link
1 parent 7a5f0b4 commit 6f7d79b

File tree

2 files changed

+63
-6
lines changed

2 files changed

+63
-6
lines changed

src/pages/_home/components/FeatureCapsules.astro

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ interface Feature {
44
title: string;
55
description: string;
66
icon?: string; // LineIcons icon name (e.g., "lni-shield")
7+
linkText?: string; // Optional link text
8+
linkUrl?: string; // Optional link URL
9+
linkTarget?: string; // Optional link target, defaults to '_self'
710
}
811
912
interface Props {
@@ -31,6 +34,18 @@ const { features, header } = Astro.props;
3134
<p>
3235
{feature.description}
3336
</p>
37+
{feature.linkText && feature.linkUrl && (
38+
<div class="feature-link-container">
39+
<a
40+
href={feature.linkUrl}
41+
class="feature-link"
42+
target={feature.linkTarget ?? '_self'}
43+
rel="noopener"
44+
>
45+
{feature.linkText}
46+
</a>
47+
</div>
48+
)}
3449
</div>
3550
))}
3651
</div>
@@ -54,6 +69,8 @@ const { features, header } = Astro.props;
5469
transition: all 0.2s ease-in-out;
5570
width: 100%;
5671
box-sizing: border-box;
72+
display: flex;
73+
flex-direction: column;
5774

5875
&:hover {
5976
transform: translateY(-1px);
@@ -81,6 +98,14 @@ const { features, header } = Astro.props;
8198
p {
8299
@include typography(paragraph);
83100
margin-bottom: 1rem;
101+
text-align: justify;
102+
flex: 1 1 auto;
103+
}
104+
.feature-link-container {
105+
width: 100%;
106+
text-align: right;
107+
margin-top: auto;
108+
padding-top: 0.5rem;
84109
}
85110
}
86111

@@ -101,5 +126,24 @@ const { features, header } = Astro.props;
101126
margin-bottom: 2rem;
102127
text-align: center;
103128
}
129+
130+
.feature-link-container {
131+
width: 100%;
132+
text-align: right;
133+
}
134+
135+
.feature-link {
136+
@include typography(paragraph);
137+
display: inline-block;
138+
margin-top: 0.5rem;
139+
text-decoration: underline;
140+
font-size: 1rem;
141+
transition: color 0.2s;
142+
// Removed text-align: right;
143+
144+
&:hover {
145+
color: var(--primary-button);
146+
}
147+
}
104148
</style>
105149

src/pages/index.astro

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -95,33 +95,46 @@ const tags = [
9595
title: "Enterprise integrations",
9696
description:
9797
"External OpenID providers; Google, Microsoft, Zitadel, Keycloak, Okta, JumpCloud and more. Integrates with LDAP, Active Directory and Microsoft Entra ID.",
98-
icon: "lni-apartment"
98+
icon: "lni-apartment",
99+
linkText: "Learn more",
100+
linkUrl: "https://example.com",
101+
linkTarget: "_blank"
99102
},
100103
{
101104
title: "Privacy and Transparency",
102105
description:
103106
"No third-party dependencies required, no metadata leaves your infrastructure, full control over deployment and configuration.",
104-
icon: "lni-lock"
107+
icon: "lni-lock",
108+
linkText: "Learn more",
109+
linkUrl: "https://example.com"
105110
},
106111
{
107112
title: "Ultimate Security",
108113
description: "Written in Rust, built around WireGuard® and with components designed to be secure, fully auditable with open source code on GitHub" ,
109-
icon: "lni-shield"
114+
icon: "lni-shield",
115+
linkText: "Learn more",
116+
linkUrl: "https://example.com"
110117
},
111118
{
112119
title: "Enables NIS2 compliance",
113120
description: "True VPN MFA built into the WireGuard® protocol layer, easy to use with defguad vpn desktop client. Defguard is NIS2 compliant.",
114-
icon: "lni-certificate"
121+
icon: "lni-certificate",
122+
linkText: "Learn more",
123+
linkUrl: "https://example.com"
115124
},
116125
{
117126
title: "Easy to deploy anywhere",
118127
description: "Run and evaluate with few command lines then scale to production with Terraform we deliver. Deploy on-prem or in your private cloud.",
119-
icon: "lni-rocket"
128+
icon: "lni-rocket",
129+
linkText: "Learn more",
130+
linkUrl: "https://example.com"
120131
},
121132
{
122133
title: "European",
123134
description: "Based in Poland and backed by European investors, Defguard operates entirely under EU law — ensuring full compliance with European security standards and zero foreign legal exposure.",
124-
icon: "lni-world"
135+
icon: "lni-world",
136+
linkText: "Learn more",
137+
linkUrl: "https://example.com"
125138
}
126139
]}
127140
/>

0 commit comments

Comments
 (0)