mirror of
https://github.com/dyzulk/trustlab-docs.git
synced 2026-01-26 21:41:54 +07:00
chore: setup manual localization branch with sidebar fix
This commit is contained in:
@@ -1,7 +1,46 @@
|
||||
import { ArrowRight, Shield, Globe, Lock, Server, Zap, ChevronRight } from "lucide-react";
|
||||
import Link from 'next/link';
|
||||
|
||||
export function LandingPage() {
|
||||
export function LandingPage({ locale = 'en' }: { locale?: 'en' | 'id' }) {
|
||||
const dict = {
|
||||
en: {
|
||||
hero: {
|
||||
badge: "v1.0 is Live",
|
||||
title: <>Secure Your <span className="text-transparent bg-clip-text bg-gradient-to-r from-blue-600 to-violet-600">Private Network</span></>,
|
||||
desc: "TrustLab is the definitive Private Certificate Authority (CA) for your internal infrastructure. Issue military-grade SSL/TLS certificates for Intranets, IoT, and Dev environments.",
|
||||
cta: "Get Started",
|
||||
cta_sec: "Generate Certificate"
|
||||
},
|
||||
features: {
|
||||
root_ca: { title: "Private Root CA", desc: "Your own sovereign Certificate Authority. Trusted by your devices, unreachable by the public internet." },
|
||||
internal: { title: "Internal Domains", desc: "Issue certificates for .local, .corp, and private IP addresses (192.168.x.x) that Public CAs reject." },
|
||||
smime: { title: "S/MIME Encryption", desc: "Secure internal email communication with employee-to-employee encryption." },
|
||||
infra: { title: "Infrastructure", desc: "Seamless integration guides for Nginx, IIS, Apache, and containerized environments." },
|
||||
issuance: { title: "Instant Issuance", desc: "No validation delays. Certificates are issued instantly via our modern dashboard." },
|
||||
start: { title: "Start Now", desc: "Follow the Setup Guide to install the Root CA and go green in minutes." }
|
||||
}
|
||||
},
|
||||
id: {
|
||||
hero: {
|
||||
badge: "v1.0 Telah Rilis",
|
||||
title: <>Amankan <span className="text-transparent bg-clip-text bg-gradient-to-r from-blue-600 to-violet-600">Jaringan Privat</span> Anda</>,
|
||||
desc: "TrustLab adalah Otoritas Sertifikat (CA) Privat definitif untuk infrastruktur internal Anda. Terbitkan sertifikat SSL/TLS kelas militer untuk Intranet, IoT, dan lingkungan Dev.",
|
||||
cta: "Mulai Sekarang",
|
||||
cta_sec: "Buat Sertifikat"
|
||||
},
|
||||
features: {
|
||||
root_ca: { title: "Root CA Privat", desc: "Otoritas Sertifikat berdaulat milik Anda. Dipercaya perangkat Anda, tidak terjangkau internet publik." },
|
||||
internal: { title: "Domain Internal", desc: "Terbitkan sertifikat untuk .local, .corp, dan IP privat (192.168.x.x) yang ditolak CA Publik." },
|
||||
smime: { title: "Enkripsi S/MIME", desc: "Amankan komunikasi email internal dengan enkripsi antar-karyawan." },
|
||||
infra: { title: "Infrastruktur", desc: "Panduan integrasi mulus untuk Nginx, IIS, Apache, dan environment container." },
|
||||
issuance: { title: "Penerbitan Instan", desc: "Tanpa penundaan validasi. Sertifikat diterbitkan instan melalui dashboard modern kami." },
|
||||
start: { title: "Mulai Sekarang", desc: "Ikuti Panduan Setup untuk menginstal Root CA dan aman dalam hitungan menit." }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const t = dict[locale]
|
||||
|
||||
return (
|
||||
<div className="flex flex-col gap-16 py-8">
|
||||
{/* Hero Section */}
|
||||
@@ -15,23 +54,23 @@ export function LandingPage() {
|
||||
<span className="animate-ping absolute inline-flex h-full w-full rounded-full bg-blue-400 opacity-75"></span>
|
||||
<span className="relative inline-flex rounded-full h-2 w-2 bg-blue-500"></span>
|
||||
</span>
|
||||
v1.0 is Live
|
||||
{t.hero.badge}
|
||||
</div>
|
||||
|
||||
<h1 className="text-4xl sm:text-5xl font-bold tracking-tight text-neutral-900 dark:text-neutral-100 mb-4">
|
||||
Secure Your <span className="text-transparent bg-clip-text bg-gradient-to-r from-blue-600 to-violet-600">Private Network</span>
|
||||
{t.hero.title}
|
||||
</h1>
|
||||
|
||||
<p className="text-lg text-neutral-600 dark:text-neutral-400 leading-relaxed max-w-xl">
|
||||
TrustLab is the definitive Private Certificate Authority (CA) for your internal infrastructure. Issue military-grade SSL/TLS certificates for Intranets, IoT, and Dev environments.
|
||||
{t.hero.desc}
|
||||
</p>
|
||||
|
||||
<div className="flex flex-wrap gap-4 mt-8">
|
||||
<Link href="https://trustlab.dyzulk.com/signup" className="inline-flex items-center gap-2 px-6 py-3 rounded-xl bg-blue-600 hover:bg-blue-700 text-white font-semibold transition-all hover:scale-105 shadow-lg shadow-blue-500/20">
|
||||
Get Started <ArrowRight className="w-4 h-4" />
|
||||
{t.hero.cta} <ArrowRight className="w-4 h-4" />
|
||||
</Link>
|
||||
<Link href="/guide/certificates/request-new" className="inline-flex items-center gap-2 px-6 py-3 rounded-xl bg-white dark:bg-neutral-800 text-neutral-900 dark:text-white border border-neutral-200 dark:border-neutral-700 font-semibold hover:bg-neutral-50 dark:hover:bg-neutral-700 transition-all">
|
||||
Generate Certificate
|
||||
<Link href={locale === 'id' ? "/id/guide/certificates/request-new" : "/guide/certificates/request-new"} className="inline-flex items-center gap-2 px-6 py-3 rounded-xl bg-white dark:bg-neutral-800 text-neutral-900 dark:text-white border border-neutral-200 dark:border-neutral-700 font-semibold hover:bg-neutral-50 dark:hover:bg-neutral-700 transition-all">
|
||||
{t.hero.cta_sec}
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
@@ -41,39 +80,39 @@ export function LandingPage() {
|
||||
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
||||
<FeatureCard
|
||||
icon={<Shield className="w-6 h-6 text-emerald-500" />}
|
||||
title="Private Root CA"
|
||||
description="Your own sovereign Certificate Authority. Trusted by your devices, unreachable by the public internet."
|
||||
link="/guide/concepts/pki-undamentals"
|
||||
title={t.features.root_ca.title}
|
||||
description={t.features.root_ca.desc}
|
||||
link={locale === 'id' ? "/id/guide/concepts/pki-undamentals" : "/guide/concepts/pki-undamentals"}
|
||||
/>
|
||||
<FeatureCard
|
||||
icon={<Globe className="w-6 h-6 text-blue-500" />}
|
||||
title="Internal Domains"
|
||||
description="Issue certificates for .local, .corp, and private IP addresses (192.168.x.x) that Public CAs reject."
|
||||
link="/guide/certificates/request-new"
|
||||
title={t.features.internal.title}
|
||||
description={t.features.internal.desc}
|
||||
link={locale === 'id' ? "/id/guide/certificates/request-new" : "/guide/certificates/request-new"}
|
||||
/>
|
||||
<FeatureCard
|
||||
icon={<Lock className="w-6 h-6 text-violet-500" />}
|
||||
title="S/MIME Encryption"
|
||||
description="Secure internal email communication with employee-to-employee encryption."
|
||||
link="/guide/integrations/smime"
|
||||
title={t.features.smime.title}
|
||||
description={t.features.smime.desc}
|
||||
link={locale === 'id' ? "/id/guide/integrations/smime" : "/guide/integrations/smime"}
|
||||
/>
|
||||
<FeatureCard
|
||||
icon={<Server className="w-6 h-6 text-orange-500" />}
|
||||
title="Infrastructure"
|
||||
description="Seamless integration guides for Nginx, IIS, Apache, and containerized environments."
|
||||
link="/guide/integrations/web-servers"
|
||||
title={t.features.infra.title}
|
||||
description={t.features.infra.desc}
|
||||
link={locale === 'id' ? "/id/guide/integrations/web-servers" : "/guide/integrations/web-servers"}
|
||||
/>
|
||||
<FeatureCard
|
||||
icon={<Zap className="w-6 h-6 text-yellow-500" />}
|
||||
title="Instant Issuance"
|
||||
description="No validation delays. Certificates are issued instantly via our modern dashboard."
|
||||
link="/guide/getting-started/access-dashboard"
|
||||
title={t.features.issuance.title}
|
||||
description={t.features.issuance.desc}
|
||||
link={locale === 'id' ? "/id/guide/getting-started/access-dashboard" : "/guide/getting-started/access-dashboard"}
|
||||
/>
|
||||
<FeatureCard
|
||||
icon={<ArrowRight className="w-6 h-6 text-neutral-500" />}
|
||||
title="Start Now"
|
||||
description="Follow the Setup Guide to install the Root CA and go green in minutes."
|
||||
link="/guide/getting-started/install-root-ca"
|
||||
title={t.features.start.title}
|
||||
description={t.features.start.desc}
|
||||
link={locale === 'id' ? "/id/guide/getting-started/install-root-ca" : "/guide/getting-started/install-root-ca"}
|
||||
isAction
|
||||
/>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user