@@ -95,42 +64,42 @@ export function LandingPage({ locale: propLocale }: LandingPageProps) {
icon={}
title={t.features.root_ca.title}
description={t.features.root_ca.desc}
- link={locale === 'id' ? "/guide/concepts/pki-fundamentals" : "/guide/concepts/pki-fundamentals"}
+ link="/guide/concepts/pki-fundamentals"
learnMoreText={t.features.learn_more}
/>
}
title={t.features.internal_domains.title}
description={t.features.internal_domains.desc}
- link={locale === 'id' ? "/guide/certificates/request-new" : "/guide/certificates/request-new"}
+ link="/guide/certificates/request-new"
learnMoreText={t.features.learn_more}
/>
}
title={t.features.smime.title}
description={t.features.smime.desc}
- link={locale === 'id' ? "/guide/integrations/smime" : "/guide/integrations/smime"}
+ link="/guide/integrations/smime"
learnMoreText={t.features.learn_more}
/>
}
title={t.features.infrastructure.title}
description={t.features.infrastructure.desc}
- link={locale === 'id' ? "/guide/integrations/web-servers" : "/guide/integrations/web-servers"}
+ link="/guide/integrations/web-servers"
learnMoreText={t.features.learn_more}
/>
}
title={t.features.instant.title}
description={t.features.instant.desc}
- link={locale === 'id' ? "/guide/getting-started/access-dashboard" : "/guide/getting-started/access-dashboard"}
+ link="/guide/getting-started/access-dashboard"
learnMoreText={t.features.learn_more}
/>
}
title={t.features.start.title}
description={t.features.start.desc}
- link={locale === 'id' ? "/guide/getting-started/install-root-ca" : "/guide/getting-started/install-root-ca"}
+ link="/guide/getting-started/install-root-ca"
isAction
learnMoreText={t.features.learn_more}
/>
diff --git a/next.config.js b/next.config.js
index aaaa9e7..091e319 100644
--- a/next.config.js
+++ b/next.config.js
@@ -4,10 +4,7 @@ const withNextra = require('nextra')({
})
module.exports = withNextra({
- i18n: {
- locales: ['en', 'id'],
- defaultLocale: 'en',
- },
+
images: {
unoptimized: true,
},
diff --git a/pages/_meta.id.json b/pages/_meta.id.json
deleted file mode 100644
index 5c87116..0000000
--- a/pages/_meta.id.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "index": {
- "title": "Beranda",
- "type": "page",
- "display": "hidden"
- },
- "guide": {
- "title": "Panduan Pengguna",
- "type": "page"
- },
- "developer": {
- "title": "Developer API",
- "type": "page"
- }
-}
\ No newline at end of file
diff --git a/pages/developer/_meta.id.json b/pages/developer/_meta.id.json
deleted file mode 100644
index 6084e96..0000000
--- a/pages/developer/_meta.id.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "index": "Dokumentasi API",
- "endpoints": "Titik Akhir (Endpoints)"
-}
\ No newline at end of file
diff --git a/pages/developer/endpoints.id.mdx b/pages/developer/endpoints.id.mdx
deleted file mode 100644
index f7c3143..0000000
--- a/pages/developer/endpoints.id.mdx
+++ /dev/null
@@ -1,71 +0,0 @@
-import { Tabs } from 'nextra/components'
-import { Code, Terminal, Send, ShieldCheck } from 'lucide-react'
-
-# Titik Akhir (Endpoints)
-
-Gunakan titik akhir API berikut untuk melakukan integrasi programatik dengan layanan TrustLab.
-
-## Dasar URL
-Semua permintaan API dilakukan ke:
-`https://trustlab.dyzulk.com/api`
-
----
-
-## Pengambilan Sertifikat Publik
-
-Endpoint ini digunakan untuk mengambil informasi publik mengenai sertifikat atau CA.
-
-### 1. Unduh Root CA
-Mengunduh sertifikat root pemegang kepercayaan utama.
-
-- **Endpoint**: `GET /ca/root/download`
-- **Output**: File `trustlab-root.crt`
-
-### 2. Lihat Detail Sertifikat (via Serial)
-Mendapatkan metadata sertifikat berdasarkan nomor serinya.
-
-- **Endpoint**: `GET /certificates/detail/{serial_number}`
-- **Respon Contoh**:
-```json
-{
- "serial": "12345-ABCDE",
- "common_name": "myserver.local",
- "issuer": "TrustLab Intermediate CA",
- "not_after": "2025-12-31T23:59:59Z",
- "status": "VALID"
-}
-```
-
----
-
-## Contoh Implementasi (cURL)
-
-
-
- ```bash
- curl -O https://trustlab.dyzulk.com/api/ca/root/download
- ```
-
-
- ```bash
- curl https://trustlab.dyzulk.com/api/certificates/detail/99887766
- ```
-
-
-
----
-
-## Status Respon API
-
-TrustLab menggunakan kode status HTTP standar:
-
-| Kode | Arti |
-| :--- | :--- |
-| `200 OK` | Permintaan berhasil. |
-| `404 Not Found` | Sertifikat tidak ditemukan. |
-| `500 Server Error` | Terjadi masalah pada database TrustLab. |
-
----
-
-> [!IMPORTANT]
-> Fitur manajemen sertifikat penuh (Create, Revoke, Renew) via API saat ini masih dalam tahap **Beta Tertutup**. Silakan hubungi admin untuk mendapatkan akses API Key jika Anda memerlukannya untuk otomatisasi infrastruktur.
diff --git a/pages/developer/index.id.mdx b/pages/developer/index.id.mdx
deleted file mode 100644
index b0c0c14..0000000
--- a/pages/developer/index.id.mdx
+++ /dev/null
@@ -1,20 +0,0 @@
-# Dokumentasi API Developer
-
-Gunakan API TrustLab untuk mengotomatiskan manajemen siklus hidup sertifikat dalam alur kerja pengembangan atau infrastruktur Anda.
-
-## Gambaran Umum
-
-API kami berbasis REST dan mengembalikan respon dalam format JSON. Saat ini, API mendukung operasi dasar untuk pengambilan informasi sertifikat publik.
-
-## Autentikasi
-
-Saat ini, endpoint publik untuk pengambilan sertifikat tidak memerlukan autentikasi API Key khusus. Namun, penggunaan secara massal untuk endpoint manajemen akan segera hadir.
-
-## Endpoint Utama
-
-- **[Daftar Endpoint](/id/developer/endpoints)**: Lihat daftar lengkap fungsi API yang tersedia saat ini.
-
----
-
-> [!NOTE]
-> Dokumentasi API sedang dikembangkan lebih lanjut. Hubungi tim dukungan kami jika Anda memerlukan akses integrasi skala besar.
diff --git a/pages/guide/_meta.id.json b/pages/guide/_meta.id.json
deleted file mode 100644
index 4999756..0000000
--- a/pages/guide/_meta.id.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "index": "Panduan Pengguna",
- "getting-started": "Mulai Cepat",
- "concepts": "Konsep Inti",
- "certificates": "Operasi Sertifikat",
- "integrations": "Integrasi",
- "troubleshooting": "Pemecahan Masalah"
-}
\ No newline at end of file
diff --git a/pages/guide/certificates/_meta.id.json b/pages/guide/certificates/_meta.id.json
deleted file mode 100644
index 007dfa2..0000000
--- a/pages/guide/certificates/_meta.id.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "request-new": "Minta Sertifikat Baru",
- "download-install": "Unduh & Format",
- "view-details": "Lihat Detail",
- "renewal": "Proses Perpanjangan",
- "revocation": "Pencabutan (Revocation)"
-}
\ No newline at end of file
diff --git a/pages/guide/certificates/download-install.id.mdx b/pages/guide/certificates/download-install.id.mdx
deleted file mode 100644
index 9efa6df..0000000
--- a/pages/guide/certificates/download-install.id.mdx
+++ /dev/null
@@ -1,43 +0,0 @@
-# Unduh & Format (PEM, PFX, JKS)
-
-Setelah sertifikat Anda diterbitkan, Anda dapat mengunduhnya dalam berbagai format yang sesuai untuk server dan aplikasi yang berbeda.
-
-## Format yang Tersedia
-
-| Format | Ekstensi | Digunakan Untuk |
-| :--- | :--- | :--- |
-| **PEM (Nginx/Apache)** | `.crt`, `.key` | Server web Linux standar. Anda mendapatkan file Sertifikat dan Private Key terpisah. |
-| **PFX / PKCS#12** | `.pfx`, `.p12` | IIS (Windows), Microsoft Exchange, Sertifikat Klien (S/MIME). Berisi key dan cert sekaligus. |
-| **JKS (Java)** | `.jks` | Aplikasi Java (Tomcat, Spring Boot). |
-
-## Cara Mengunduh (Salin & Simpan)
-
-Dashboard memungkinkan Anda untuk menyalin data mentah sertifikat secara langsung.
-
-1. Buka menu **"My Certificates"** dan klik tombol **View (Ikon Mata)** pada sertifikat Anda.
-2. **Sertifikat:** Gulir ke bagian "Certificate (CRT)" dan klik **Ikon Salin** di pojok kanan atas. Simpan ke dalam file bernama `domain.crt` atau `domain.pem`.
-3. **Private Key:** Gulir ke bagian "Private Key (KEY)", klik **Show**, lalu klik **Ikon Salin**. Simpan ke dalam file bernama `domain.key`.
-
-> [!TIP]
-> Gunakan editor teks murni (Notepad, VS Code, Nano) untuk menyimpan file-file ini. Jangan gunakan Word atau editor Rich Text.
-
-> [!WARNING]
-> **Private Key** dihasilkan secara aman secara lokal di browser/server. Jika Anda menghilangkannya, kunci tersebut **TIDAK BISA** dipulihkan. Anda harus melakukan revoke dan menerbitkan ulang sertifikat.
-
-## Contoh Instalasi
-
-### Nginx (PEM)
-```nginx
-server {
- listen 443 ssl;
- server_name internal.app;
-
- ssl_certificate /etc/nginx/ssl/internal.app.crt;
- ssl_certificate_key /etc/nginx/ssl/internal.app.key;
-}
-```
-
-### Windows (PFX)
-1. Klik dua kali file `.pfx` yang diunduh.
-2. Ikuti "Certificate Import Wizard".
-3. Saat diminta kata sandi, masukkan kata sandi yang Anda tetapkan saat mengunduh (atau kata sandi ekspor default yang disediakan di UI).
diff --git a/pages/guide/certificates/renewal.id.mdx b/pages/guide/certificates/renewal.id.mdx
deleted file mode 100644
index f1f4a33..0000000
--- a/pages/guide/certificates/renewal.id.mdx
+++ /dev/null
@@ -1,7 +0,0 @@
-# Pembaruan Sertifikat
-
-Dokumentasi untuk pembaruan sertifikat sedang dalam proses penerjemahan. Silakan lihat versi [Bahasa Inggris](/guide/certificates/renewal) untuk saat ini.
-
-
- ⚠️ **Catatan**: Halaman ini belum diterjemahkan sepenuhnya.
-
diff --git a/pages/guide/certificates/request-new.id.mdx b/pages/guide/certificates/request-new.id.mdx
deleted file mode 100644
index 2de323e..0000000
--- a/pages/guide/certificates/request-new.id.mdx
+++ /dev/null
@@ -1,51 +0,0 @@
-import { Steps, Callout, Cards, Card } from 'nextra/components'
-import { FileBadge, ShieldCheck, Globe, Code, Save, AlertTriangle } from 'lucide-react'
-
-# Menerbitkan Sertifikat Baru
-
-TrustLab menyediakan wizard yang disederhanakan untuk menghasilkan sertifikat SSL/TLS pribadi untuk infrastruktur internal Anda.
-
-## Prasyarat
-Sebelum memulai, pastikan Anda memiliki:
-* Akses akun TrustLab yang aktif.
-* **Root CA** telah terinstal di perangkat Anda (agar mempercayai sertifikat yang diterbitkan).
-
----
-
-
-### 1. Buka Menu Sertifikat
-Akses halaman **Certificates**. Tampilan ini mencantumkan semua sertifikat aktif dan kedaluwarsa Anda. Klik tombol **"Generate New"** (atau "+") untuk memulai.
-
-
-
-### 2. Masukkan Detail Domain (Mode Default)
-Secara default, Anda hanya perlu memberikan Identitas. Sistem akan mengisi otomatis metadata Organisasi & Lokasi.
-
-
-
-* **Common Name (CN)**: Domain utama (misalnya, `app.internal`).
-* **SANs**: Domain tambahan atau alamat IP.
-* **Key Strength**: Pilih tingkat enkripsi.
- 
- * **2048-bit**: Standar industri, kompatibel dengan semua perangkat.
- * **4096-bit**: Keamanan lebih tinggi, sedikit lebih intensif pada CPU.
-
-### 3. Kustomisasi CSR (Kontrol Manual)
-Aktifkan **"Manual Control"** jika Anda perlu menimpa bidang Identitas default (misalnya, untuk kantor cabang tertentu atau entitas hukum khusus).
-
-
-
-* **Organization (O)**: Ganti nama perusahaan default.
-* **Locality (L) / State (ST)**: Atur data lokasi spesifik.
-* **Country (C)**: Kode ISO Negara.
-
-
-### 4. Terbitkan & Simpan
-Klik **Generate**.
-* **Certificate (.pem)** dan **Private Key (.key)** akan dihasilkan secara instan.
-* Anda dapat menyalinnya segera atau mengaksesnya nanti dari halaman **Certificate Details**.
-
-}>
- **Penyimpanan:** Private Key Anda disimpan dengan aman di server (dienkripsi). Anda dapat melihatnya kapan saja dengan mengklik **"View Details"** pada daftar sertifikat.
-
-
diff --git a/pages/guide/certificates/revocation.id.mdx b/pages/guide/certificates/revocation.id.mdx
deleted file mode 100644
index 90d6331..0000000
--- a/pages/guide/certificates/revocation.id.mdx
+++ /dev/null
@@ -1,22 +0,0 @@
-# Pencabutan (Revocation)
-
-Pencabutan membatalkan validitas sertifikat sebelum tanggal kedaluwarsanya. Ini sangat penting jika Private Key Anda bocor atau hilang.
-
-## Kapan Harus Mencabut?
-- **Kebocoran Kunci (Key Compromise)**: Anda curiga seseorang telah mencuri Private Key Anda.
-- **Perubahan Layanan**: Nama domain secara efektif tidak lagi menjadi milik layanan tersebut.
-- **Kesalahan**: Sertifikat diterbitkan dengan detail yang salah.
-
-## Cara Menghapus / Mencabut
-
-Jika sertifikat bocor atau tidak lagi dibutuhkan, Anda dapat menghapusnya dari sistem.
-
-1. Buka daftar **Certificates**.
-2. Cari sertifikat yang ingin dihapus.
-3. Klik **Ikon Tempat Sampah** (Delete) di sisi kanan baris.
-4. **Konfirmasi**: Ketik `DELETE` di modal konfirmasi untuk menghapus sertifikat dan private key-nya secara permanen dari TrustLab.
-
-
-
-## CRL (Certificate Revocation List)
-Setelah dicabut, nomor seri sertifikat akan ditambahkan ke TrustLab CRL. Semua klien yang memeriksa CRL akan segera menolak sertifikat tersebut.
diff --git a/pages/guide/certificates/view-details.id.mdx b/pages/guide/certificates/view-details.id.mdx
deleted file mode 100644
index e929ef4..0000000
--- a/pages/guide/certificates/view-details.id.mdx
+++ /dev/null
@@ -1,42 +0,0 @@
-import { Steps } from 'nextra/components'
-import { Search, Eye, Clipboard, ShieldAlert } from 'lucide-react'
-
-# Lihat Detail Sertifikat
-
-Setiap sertifikat di TrustLab memiliki metadata lengkap yang bisa Anda audit kapan saja untuk memastikan kesesuaian identitas dan keamanan.
-
-## Cara Melihat Detail
-
-
-### Navigasi ke List
-Di menu utama Dashboard, klik **"Manage Certificates"**. Anda akan melihat daftar semua sertifikat yang pernah diterbitkan.
-
-### Klik Ikon Mata
-Gunakan kolom pencarian untuk menemukan domain Anda. Klik tombol **"View Details"** (ikon mata 👁️) di sisi kanan baris sertifikat.
-
-### Tinjau Tab Informasi
-Anda akan melihat detail seperti:
-- **Serial Number**: ID unik sertifikat Anda.
-- **Validity period**: Tanggal mulai dan berakhir.
-- **Issuer**: CA mana yang menandatangani (TrustLab Intermediate).
-- **Public Key Info**: Algoritma yang digunakan (RSA 2048/4096).
-
-
----
-
-## Audit Metadata
-
-Penting untuk memeriksa detail berikut secara berkala:
-
-- **Thumbprint (SHA-1/SHA-256)**: Gunakan fingerprint ini untuk memverifikasi apakah sertifikat yang terpasang di server benar-benar yang Anda terbitkan dari TrustLab.
-- **Subject Alternative Names (SAN)**: Pastikan semua alias domain yang dibutuhkan sudah terdaftar di sini.
-- **Status**: Pastikan statusnya **Valid** (hijau). Jika warnanya merah, berarti sertifikat telah kadaluarsa atau dicabut.
-
----
-
-## Keamanan Data Detail
-
-Meskipun detail sertifikat (Public) aman untuk dilihat, tim TrustLab menyarankan untuk membatasi akses ke dashboard hanya untuk admin sistem yang berkepentingan untuk mencegah kebocoran informasi topologi jaringan.
-
-> [!TIP]
-> Anda bisa menyalin (copy) Serial Number secara cepat melalui tombol clipboard di samping teks untuk keperluan dokumentasi internal atau konfigurasi firewall.
diff --git a/pages/guide/concepts/_meta.id.json b/pages/guide/concepts/_meta.id.json
deleted file mode 100644
index f75aa11..0000000
--- a/pages/guide/concepts/_meta.id.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "pki-fundamentals": "Dasar-Dasar PKI",
- "trust-architecture": "Arsitektur Kepercayaan"
-}
\ No newline at end of file
diff --git a/pages/guide/concepts/pki-fundamentals.id.mdx b/pages/guide/concepts/pki-fundamentals.id.mdx
deleted file mode 100644
index 1ee088f..0000000
--- a/pages/guide/concepts/pki-fundamentals.id.mdx
+++ /dev/null
@@ -1,58 +0,0 @@
-import { Steps } from 'nextra/components'
-import { Shield, Key, Lock, Globe } from 'lucide-react'
-
-# Dasar-Dasar PKI
-
-Memahami cara kerja **Public Key Infrastructure (PKI)** sangat penting untuk mengelola keamanan jaringan internal Anda. TrustLab menyederhanakan konsep kompleks ini menjadi alur kerja yang mudah dikelola.
-
-## Apa itu PKI?
-
-PKI adalah kerangka kerja yang terdiri dari peran, kebijakan, perangkat lunak, dan perangkat keras yang digunakan untuk membuat, mengelola, mendistribusikan, menggunakan, menyimpan, dan mencabut sertifikat digital.
-
----
-
-## Komponen Utama TrustLab
-
-TrustLab mengelola tiga pilar utama keamanan untuk Anda:
-
-### 1. Root Certificate Authority (CA)
-Akar dari kepercayaan di seluruh jaringan Anda. Root CA digunakan untuk menandatangani sertifikat lain di bawahnya. Jika perangkat mempercayai Root CA ini, mereka akan mempercayai semua sertifikat yang diterbitkannya.
-
-### 2. Intermediate CA
-Digunakan oleh TrustLab untuk operasional sehari-hari. Kami tidak menggunakan Root CA langsung untuk menandatangani sertifikat pengguna akhir (end-entity) demi alasan keamanan (isolasi).
-
-### 3. Sertifikat Pengguna Akhir
-Sertifikat SSL/TLS yang Anda pasang di server web, perangkat IoT, atau klien email. Inilah yang sebenarnya "mengamankan" koneksi Anda.
-
----
-
-## Cara Kerja Kepercayaan (Trust)
-
-Bagaimana browser Anda tahu bahwa sebuah situs web itu aman?
-
-
-### Instalasi Akar
-Administrator menginstal Root CA TrustLab ke sistem trust store Anda.
-
-### Pengenalan Sertifikat
-Saat Anda mengakses situs internal, server menyajikan sertifikatnya.
-
-### Verifikasi Rantai
-Browser memeriksa: "Apakah sertifikat ini ditandatangani oleh pemegang yang saya percayai (Root CA)?"
-
-### Koneksi Aman
-Jika rantai valid, gembok hijau muncul dan enkripsi data dimulai.
-
-
----
-
-## Mengapa PKI Privat?
-
-Mungkin Anda bertanya, kenapa tidak menggunakan CA publik seperti Let's Encrypt?
-
-1. **Domain Non-Publik**: CA publik tidak bisa mengeluarkan sertifikat untuk `.local` atau `.internal`.
-2. **Kontrol Penuh**: Anda menentukan masa berlaku, algoritma enkripsi, dan siapa yang berhak mendapatkan sertifikat.
-3. **Tanpa Validasi DNS**: Karena ini internal, Anda tidak perlu membuktikan kepemilikan domain ke pihak luar.
-
-> [!IMPORTANT]
-> Keamanan PKI privat Anda bergantung sepenuhnya pada **kerahasiaan Private Key Root CA**. TrustLab menyimpan key ini dengan enkripsi kuat untuk memastikan integritas jaringan Anda.
diff --git a/pages/guide/concepts/trust-architecture.id.mdx b/pages/guide/concepts/trust-architecture.id.mdx
deleted file mode 100644
index 213e8ab..0000000
--- a/pages/guide/concepts/trust-architecture.id.mdx
+++ /dev/null
@@ -1,50 +0,0 @@
-import { Steps } from 'nextra/components'
-import { Shield, Lock, Server, Users } from 'lucide-react'
-
-# Arsitektur Kepercayaan
-
-Arsitektur TrustLab dibangun di atas prinsip isolasi dan keamanan berlapis. Kami menggunakan struktur otoritas bertingkat untuk memastikan integritas jaringan Anda tetap terjaga.
-
-## Hirarki Otoritas Sertifikat
-
-Untuk keamanan maksimal, TrustLab tidak menggunakan satu kunci untuk semua hal. Kami menggunakan hirarki berikut:
-
-### 1. Root CA (Offline Root)
-Ini adalah "Ayah" dari segala kepercayaan. Key ini sangat sensitif dan idealnya jarang digunakan. Dalam infrastruktur yang sangat ketat, Root CA biasanya tetap offline.
-
-### 2. Intermediate CA (Issuing CA)
-TrustLab secara otomatis membuat Intermediate CA yang menandatangani sertifikat pengguna Anda. Jika Intermediate CA disusupi, Root CA dapat mencabutnya tanpa merusak seluruh ekosistem keamanan Anda.
-
-### 3. End-Entity Certificates
-Aplikasi atau server Anda menggunakan sertifikat ini. Mereka memiliki masa berlaku yang lebih pendek (biasanya 1 tahun atau kurang) untuk meminimalkan risiko.
-
----
-
-## Alur Penerbitan Sertifikat
-
-Bagaimana data Anda berpindah dari dashboard hingga menjadi sertifikat sah?
-
-
-### Permintaan Klien (CSR)
-Dashboard membuat sepasang kunci (Public & Private). Public key dikirim dalam format Certificate Signing Request (CSR).
-
-### Validasi Internal
-Dashboard TrustLab memverifikasi identitas Anda dan hak akses Anda terhadap domain yang diminta.
-
-### Penandatanganan CA
-Intermediate CA menandatangani CSR tersebut menggunakan Private Key CA-nya sendiri.
-
-### Pengiriman Sertifikat
-Sertifikat hasil tanda tangan dikembalikan ke Dashboard untuk Anda unduh.
-
-
----
-
-## Keamanan Kunci (Key Security)
-
-- **Enkripsi saat Istirahat (Encryption at Rest)**: Semua Private Key disimpan dalam database menggunakan enkripsi tingkat tinggi (AES-256).
-- **Isolasi Database**: Hanya layanan CA internal yang memiliki akses ke modul yang mendekripsi key tersebut.
-- **Audit Logs**: Setiap aksi penandatanganan dicatat dalam log sistem yang tidak dapat diubah (immutable logs).
-
-> [!TIP]
-> Jangan pernah membagikan file Private Key (`.key`) Anda kepada siapapun. Siapapun yang memiliki key tersebut bisa menyamar sebagai server Anda.
diff --git a/pages/guide/getting-started/_meta.id.json b/pages/guide/getting-started/_meta.id.json
deleted file mode 100644
index 80dd6d6..0000000
--- a/pages/guide/getting-started/_meta.id.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "install-root-ca": "Instal Root CA",
- "access-dashboard": "Akses Dashboard"
-}
\ No newline at end of file
diff --git a/pages/guide/getting-started/access-dashboard.id.mdx b/pages/guide/getting-started/access-dashboard.id.mdx
deleted file mode 100644
index 24c4f45..0000000
--- a/pages/guide/getting-started/access-dashboard.id.mdx
+++ /dev/null
@@ -1,96 +0,0 @@
-import { Callout, Steps, Cards, Card } from 'nextra/components'
-import { Monitor, Smartphone, LayoutDashboard, Key, Shield, Info, Clock, AlertTriangle } from 'lucide-react'
-
-# Mengakses Dashboard
-
-**TrustLab Dashboard** adalah pusat kendali utama Anda untuk mengelola sertifikat. Di sini Anda dapat meminta sertifikat baru, mengunduh kunci, dan mengelola sertifikat yang sudah ada.
-
-
-
-## Metode Autentikasi
-
-Kami mengutamakan keamanan dengan menawarkan opsi autentikasi modern tanpa kata sandi (passwordless).
-
-
- } title="SSO (Google / GitHub)" href="#1-single-sign-on-sso" arrow />
- } title="Magic Link (Email)" href="#2-magic-link" arrow />
-
-
-### 1. Single Sign-On (SSO)
-Cara tercepat untuk masuk. Klik **Continue with Google** atau **Continue with GitHub**.
-
-}>
-**Perilaku SSO:**
-* **Pengguna Lama:** Anda hanya dapat Masuk via SSO jika alamat email Anda sudah terdaftar.
-* **Pengguna Baru:** Anda dapat **Mendaftar** akun baru secara instan dengan mengklik tombol Social Login pada halaman *Sign In* atau *Sign Up*.
-
-
-### 2. Magic Link
-Masuk yang aman dan tanpa kata sandi melalui email.
-
-
-### Masukkan Email
-Masukkan alamat email terdaftar Anda pada formulir login dan klik **"Continue with Email"**.
-
-### Cek Kotak Masuk
-Anda akan menerima email berisi tautan login unik yang sensitif terhadap waktu.
-
-### Klik untuk Verifikasi
-Klik tombol **"Sign in to TrustLab"** di dalam email tersebut. Anda akan langsung masuk ke dashboard secara instan.
-
-
-}>
- **Kedaluwarsa:** Tautan Magic Link hanya berlaku selama **15 menit**. Jika kedaluwarsa, cukup minta tautan baru dengan memasukkan email Anda kembali.
-
-
-## Ikhtisar Dashboard
-
-Setelah berhasil masuk, Anda akan mendarat di dashboard utama.
-
-
-
-Hub pusat ini memungkinkan Anda untuk mengakses:
-* **Active Certificates**: Lihat semua sertifikat valid yang diterbitkan untuk Anda.
-* **Request Certificate**: Wizard untuk menghasilkan Private Key dan CSR baru.
-* **Revocation**: Antarmuka untuk menandai sertifikat yang hilang atau bocor sebagai tidak valid.
-
-## Registrasi
-
-Pengguna baru dapat membuat akun untuk mulai mengelola sertifikat.
-
-
-
-
-### Opsi A: Registrasi Sosial (Instan)
-1. Klik **Continue with Google** atau **Continue with GitHub**.
-2. **Atur Kata Sandi:** Pertama, pastikan Anda telah [**Menginstal Root CA**](/id/guide/getting-started/install-root-ca) di perangkat Anda.
-
-
-
-### Opsi B: Registrasi Email
-1. Klik **"Sign up"** atau isi formulir.
-2. Berikan detail dan kata sandi Anda.
-3. **Verifikasi Email:** Klik tautan yang dikirim ke kotak masuk Anda untuk mengaktifkan.
-
-
-## Pemulihan Kata Sandi
-
-Jika Anda kehilangan akses ke akun, Anda dapat mengatur ulang kata sandi dengan aman.
-
-
-
-1. Klik **"Forgot password?"** pada layar login.
-2. Masukkan alamat email terdaftar Anda.
-3. Cek kotak masuk Anda untuk tautan pengaturan ulang kata sandi.
-4. Buat kata sandi baru dan masuk.
-
-## Pemecahan Masalah
-
-### Saya tidak menerima Magic Link
-* **Cek Spam/Junk**: Seringkali masuk ke sana untuk domain perusahaan.
-* **Tunggu 1-2 Menit**: Pengiriman email terkadang tertunda.
-* **Whitelist Pengirim**: Tambahkan `@trustlab.dyzulk.com` ke daftar **Safe Senders** penyedia email Anda agar tidak diblokir.
-
-### Akses Ditolak / Pengguna Tidak Ditemukan
-* **Salah Ketik**: Periksa kembali alamat email Anda.
-* **Belum Terdaftar**: Jika Anda belum membuat akun, silakan **Daftar** terlebih dahulu. Anda tidak dapat masuk via SSO jika email Anda belum ada di sistem kami (kecuali Anda menggunakan alur Pendaftaran).
diff --git a/pages/guide/getting-started/install-root-ca.id.mdx b/pages/guide/getting-started/install-root-ca.id.mdx
deleted file mode 100644
index 2803cc5..0000000
--- a/pages/guide/getting-started/install-root-ca.id.mdx
+++ /dev/null
@@ -1,64 +0,0 @@
-import { Tabs, Steps, Cards, Card, Callout } from 'nextra/components'
-import { Monitor, Smartphone, AlertTriangle, Info } from 'lucide-react'
-
-# Menginstal Root CA
-
-Untuk memastikan browser Anda mempercayai sertifikat yang diterbitkan oleh TrustLab, Anda harus menginstal Root CA kami.
-
-## Instalasi Cepat (Bundle)
-
-Instal secara instan **SEMUA** sertifikat Root & Intermediate TrustLab menggunakan skrip bundle otomatis kami.
-
-### Linux / Server (CLI)
-
-Pilih distribusi Anda untuk mendapatkan perintah instalasi yang dioptimalkan:
-
-
-
- ```bash
- sudo apt update && sudo apt install -y curl && curl -sL https://cdn.trustlab.dyzulk.com/ca/bundles/trustlab-all.sh | sudo bash
- ```
-
-
- ```bash
- (sudo yum install -y curl || sudo dnf install -y curl) && curl -sL https://cdn.trustlab.dyzulk.com/ca/bundles/trustlab-all.sh | sudo bash
- ```
-
-
- ```bash
- sudo pacman -Sy --noconfirm curl && curl -sL https://cdn.trustlab.dyzulk.com/ca/bundles/trustlab-all.sh | sudo bash
- ```
-
-
- ```bash
- curl -sL https://cdn.trustlab.dyzulk.com/ca/bundles/trustlab-all.sh | sudo bash
- ```
-
-
-
-### Ekosistem Windows & Apple
-
-
- } title="Windows Bundle Installer (.bat)" href="https://cdn.trustlab.dyzulk.com/ca/bundles/trustlab-all.bat" arrow />
- } title="macOS / iOS Profile (.mobileconfig)" href="https://cdn.trustlab.dyzulk.com/ca/bundles/trustlab-all.mobileconfig" arrow />
-
-
-
-}>
- **Pengguna Windows:** Anda **WAJIB** klik kanan file `.bat` dan pilih **"Run as Administrator"**. Mengklik dua kali secara langsung kemungkinan besar akan gagal karena batasan izin.
-
-
-
-}>
- **Pengguna Apple:** Setelah mengunduh profil, buka **System Settings > Privacy & Security > Profiles** untuk menginstalnya. Untuk iOS, lihat bagian *Instalasi Sertifikat Individu* di bawah untuk langkah-langkah kepercayaan mendetail.
-
-
----
-
-import { DynamicInstallationGuide } from '../../../components/DynamicInstallationGuide'
-
-## Instalasi Sertifikat Individu
-
-Jika Anda perlu menginstal sertifikat tertentu secara individu (misal: hanya Root, atau Intermediate tertentu), gunakan panduan langsung di bawah ini.
-
-
diff --git a/pages/guide/index.id.mdx b/pages/guide/index.id.mdx
deleted file mode 100644
index 51dd9d9..0000000
--- a/pages/guide/index.id.mdx
+++ /dev/null
@@ -1,23 +0,0 @@
-# Panduan Pengguna TrustLab
-
-Selamat datang di dokumentasi resmi TrustLab. Panduan ini dirancang untuk membantu Anda memahami, menginstal, dan mengelola Otoritas Sertifikat (CA) privat Anda sendiri.
-
-## Apa itu TrustLab?
-
-TrustLab adalah solusi manajemen PKI (Public Key Infrastructure) yang disederhanakan untuk jaringan internal. Kami memungkinkan Anda untuk:
-
-- **Mengeluarkan Sertifikat SSL/TLS** untuk domain internal seperti `.local`, `.corp`, atau alamat IP privat.
-- **Mengamankan Komunikasi IoT** dan perangkat dalam jaringan lokal.
-- **Enkripsi Email (S/MIME)** untuk kerahasiaan data karyawan.
-- **Otomasi Integrasi** dengan web server modern seperti Nginx dan IIS.
-
-## Langkah Cepat
-
-1. **Instal Root CA**: Langkah pertama yang wajib dilakukan agar semua sertifikat Anda dipercaya oleh perangkat. [Baca selengkapnya](/id/guide/getting-started/install-root-ca)
-2. **Akses Dashboard**: Masuk ke portal manajemen Anda untuk mulai menerbitkan sertifikat. [Baca selengkapnya](/id/guide/getting-started/access-dashboard)
-3. **Terbitkan Sertifikat**: Pelajari cara membuat permintaan sertifikat baru dalam hitungan detik. [Baca selengkapnya](/id/guide/certificates/request-new)
-
----
-
-> [!TIP]
-> Mulailah dari bagian **Mulai Cepat** untuk mendapatkan Certificate Authority yang berfungsi penuh dalam waktu kurang dari 5 menit.
diff --git a/pages/guide/integrations/_meta.id.json b/pages/guide/integrations/_meta.id.json
deleted file mode 100644
index 6d3ef99..0000000
--- a/pages/guide/integrations/_meta.id.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "web-servers": "Konfigurasi Web Server",
- "smime": "Keamanan Email S/MIME"
-}
\ No newline at end of file
diff --git a/pages/guide/integrations/smime.id.mdx b/pages/guide/integrations/smime.id.mdx
deleted file mode 100644
index 6b3a73d..0000000
--- a/pages/guide/integrations/smime.id.mdx
+++ /dev/null
@@ -1,77 +0,0 @@
-import { Steps, Callout, Tabs } from 'nextra/components'
-import { Mail, BadgeAlert, ShieldCheck } from 'lucide-react'
-
-# Keamanan Email S/MIME
-
-Secure/Multipurpose Internet Mail Extensions (S/MIME) memungkinkan Anda untuk **menandatangani** (membuktikan identitas) dan **mengenkripsi** (melindungi konten) pesan email.
-
-}>
- **Hanya untuk Penggunaan Internal:**
- Sertifikat TrustLab bersifat pribadi. Jika Anda mengirim email bertanda tangan ke **Penerima Eksternal** (misal: Gmail, Yahoo), mereka akan melihat peringatan "Tanda Tangan Tidak Dipercaya/Tidak Valid" karena mereka tidak mempercayai Root CA TrustLab.
-
- **Gunakan ini hanya untuk komunikasi internal perusahaan.**
-
-
-## Panduan Pengaturan
-
-## Konfigurasi Microsoft Outlook
-
-
-
- **Versi yang Didukung:** Outlook 365, 2019, 2016.
-
-
- ### 1. Buka Trust Center
- Buka **File > Options > Trust Center > Trust Center Settings**.
-
- ### 2. Email Security
- Pilih **Email Security** dari sidebar kiri.
-
- ### 3. Impor Sertifikat
- Di bawah *Encrypted Email*, klik **Settings...**
- * **Signing Certificate**: Klik 'Choose' dan pilih sertifikat TrustLab Anda.
- * **Encryption Certificate**: Sama seperti di atas.
-
- ### 4. Simpan
- Klik **OK** untuk menerapkan.
-
-
-
- **Versi yang Didukung:** Outlook baru untuk Windows, OWA.
- *Catatan: Memerlukan ekstensi S/MIME Control.*
-
-
- ### 1. Buka Pengaturan
- Klik **Ikon Roda Gigi** (Settings) di pojok kanan atas.
-
- ### 2. Menu S/MIME
- Navigasi ke **Mail > S/MIME**.
-
- ### 3. Aktifkan
- Aktifkan **"Encrypt with S/MIME"** dan pilih sertifikat Anda.
-
-
-
-
-## Konfigurasi Thunderbird
-
-**Persyaratan Versi:** v115+ (Supernova) atau yang lebih baru.
-
-
-### 1. Pengaturan Akun
-Klik tombol **Menu (≡)** dan pilih **Account Settings**.
-
-### 2. Enkripsi End-to-End
-Pilih akun email Anda dari sidebar dan klik **End-to-End Encryption**.
-
-### 3. Impor Sertifikat
-Di bagian **S/MIME**, klik **Add** (atau Manager) untuk mengimpor file `.p12` Anda.
-
-### 4. Terapkan Sertifikat
-Di bawah *Select Certificate*, pilih file yang diimpor untuk keduanya:
-* **Digital Signing**
-* **Encryption**
-
-
-## Cara Mengetes
-Kirim email ke rekan kerja yang juga telah menginstal Root CA. Mereka seharusnya melihat ikon **Pita/Badge** terverifikasi yang menunjukkan bahwa email tersebut dipercaya dan tidak dimodifikasi.
diff --git a/pages/guide/integrations/web-servers.id.mdx b/pages/guide/integrations/web-servers.id.mdx
deleted file mode 100644
index 2f602ea..0000000
--- a/pages/guide/integrations/web-servers.id.mdx
+++ /dev/null
@@ -1,78 +0,0 @@
-import { Tabs, Callout } from 'nextra/components'
-import { Server, Globe, Shield } from 'lucide-react'
-
-# Konfigurasi Web Server
-
-Untuk mengaktifkan HTTPS pada layanan internal Anda, Anda perlu mengonfigurasi web server agar menggunakan sertifikat yang diterbitkan oleh TrustLab.
-
-}>
- **Prasyarat:** Pastikan Anda telah mengunduh **PEM Bundle** (untuk Linux) atau **PFX** (untuk Windows) seperti yang dijelaskan dalam [Panduan Unduh](/id/guide/certificates/download-install).
-
-
-## Contoh Konfigurasi
-
-Pilih lingkungan web server Anda di bawah ini:
-
-
-
- ### Pengaturan Nginx
- File Target: `/etc/nginx/sites-available/default` atau `internal.app.conf`
-
- ```nginx
- server {
- listen 80;
- server_name internal.app;
- return 301 https://$host$request_uri;
- }
-
- server {
- listen 443 ssl http2;
- server_name internal.app;
-
- # SSL Configuration
- ssl_certificate /etc/ssl/trustlab/internal.app.crt;
- ssl_certificate_key /etc/ssl/trustlab/internal.app.key;
-
- # Recommended Security
- ssl_protocols TLSv1.2 TLSv1.3;
- ssl_ciphers HIGH:!aNULL:!MD5;
- ssl_prefer_server_ciphers on;
- }
- ```
-
-
- ### Pengaturan Apache / HTTPD
- File Target: `/etc/httpd/conf.d/ssl.conf` atau file VHost.
-
- ```apache
-
- ServerName internal.app
- DocumentRoot /var/www/html/internal
-
- SSLEngine on
- SSLCertificateFile "/path/to/internal.app.crt"
- SSLCertificateKeyFile "/path/to/internal.app.key"
-
- # Best Practice
- SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
-
- ```
- 5. Pergi ke **Sites**, pilih situs Anda, dan klik **Bindings...**.
- 6. Tambahkan binding `https` dan pilih sertifikat TrustLab yang baru diimpor.
-
-
-
----
-
-## Verifikasi Konfigurasi
-
-Gunakan perintah `curl` dari terminal untuk memastikan sertifikat terdeteksi dengan benar:
-
-```bash
-curl -vI https://internal.yourcompany.local
-```
-
-Perhatikan baris `server certificate verification OK`. Jika muncul error, pastikan Anda telah menginstal Root CA di perangkat yang menjalankan perintah tersebut.
-
-> [!NOTE]
-> Sangat disarankan untuk selalu menggunakan file **BUNDLE/COMBINED** (Sertifikat + Intermediate) untuk menghindari masalah rantai sertifikat (Chain Error) di beberapa browser mobile.
diff --git a/pages/guide/troubleshooting/_meta.id.json b/pages/guide/troubleshooting/_meta.id.json
deleted file mode 100644
index 4d35789..0000000
--- a/pages/guide/troubleshooting/_meta.id.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "browser-errors": "Kesalahan Umum Browser",
- "developer-tools": "Masalah CLI & Bahasa"
-}
\ No newline at end of file
diff --git a/pages/guide/troubleshooting/browser-errors.id.mdx b/pages/guide/troubleshooting/browser-errors.id.mdx
deleted file mode 100644
index 73e813a..0000000
--- a/pages/guide/troubleshooting/browser-errors.id.mdx
+++ /dev/null
@@ -1,43 +0,0 @@
-import { Callout, Cards, Card } from 'nextra/components'
-import { AlertTriangle, Globe, Calendar, XCircle, HelpCircle } from 'lucide-react'
-
-# Kesalahan Browser Umum
-
-Saat menggunakan sertifikat internal, browser sangatlah ketat. Berikut adalah kode kesalahan yang paling umum dan cara mengatasinya.
-
-### `NET::ERR_CERT_AUTHORITY_INVALID`
-
-}>
- **Logikanya:** Browser sama sekali **tidak mengenal** "TrustLab Root CA" yang menandatangani sertifikat situs web Anda, sehingga ia menganggapnya palsu.
-
-
-**Solusi:**
-Anda belum menginstal Root CA di perangkat Anda.
-* [**Panduan Instalasi Root CA**](/id/guide/getting-started/install-root-ca)
-
----
-
-### `NET::ERR_CERT_COMMON_NAME_INVALID`
-
-}>
- **Logikanya:** Anda mengunjungi `app.local`, tetapi sertifikat hanya diterbitkan untuk `api.local`. Namanya **tidak cocok**.
-
-
-**Solusi:**
-Domain tersebut tidak ada dalam **SANs (Subject Alternative Names)** sertifikat.
-1. Klik ikon **"Not Secure"** > **Certificate**.
-2. Periksa bidang **DNS Name** atau SAN.
-3. Jika tidak ada, Anda harus **[Menerbitkan Sertifikat Baru](/id/guide/certificates/request-new)** yang menyertakan domain yang benar.
-
----
-
-### `NET::ERR_CERT_DATE_INVALID`
-
-}>
- **Logikanya:** Sertifikat telah kedaluwarsa, ATAU jam komputer Anda diatur ke tanggal yang salah (lampau/masa depan).
-
-
-**Solusi:**
-1. Periksa jam sistem Anda terlebih dahulu.
-2. Jika jam sudah benar, berarti sertifikat benar-benar kedaluwarsa.
-3. **[Perbarui Sertifikat](/id/guide/certificates/renewal)** segera.
diff --git a/pages/guide/troubleshooting/developer-tools.id.mdx b/pages/guide/troubleshooting/developer-tools.id.mdx
deleted file mode 100644
index c190843..0000000
--- a/pages/guide/troubleshooting/developer-tools.id.mdx
+++ /dev/null
@@ -1,97 +0,0 @@
-import { Callout, Steps } from 'nextra/components'
-import { Terminal, Code, Server, Download } from 'lucide-react'
-
-# Masalah CLI & Bahasa Pemrograman
-
-Bahkan jika Anda sudah menginstal Root CA di sistem operasi Anda, banyak alat pengembang dan bahasa pemrograman yang **mengabaikan penyimpanan sistem (system store)** dan menggunakan penyimpanan mereka sendiri.
-
-}>
- **Prasyarat:**
- Anda harus memiliki file **`trustlab-root.crt`** yang sudah diunduh di mesin Anda.
- [Unduh di sini](/id/guide/getting-started/install-root-ca).
-
-
-Jika kode atau skrip Anda gagal dengan kesalahan sertifikat, periksa solusi di bawah ini.
-
-## 1. cURL & Wget
-
-Alat baris perintah standar sering kali mencari file bundle tertentu.
-
-### cURL
-}>
- `curl: (60) SSL certificate problem: unable to get local issuer certificate`
-
-
-**Solusi:**
-Teruskan Root CA secara eksplisit:
-```bash
-curl --cacert /jalur/ke/trustlab-root.crt https://domain-anda.local
-```
-
-### Wget
-**Solusi:**
-```bash
-wget --ca-certificate=/jalur/ke/trustlab-root.crt https://domain-anda.local
-```
-
----
-
-## 2. Node.js / JavaScript
-
-Node.js tidak menggunakan Root CA Sistem secara default.
-
-}>
- `Error: self signed certificate in certificate chain`
-
-
-**Solusi (Variabel Lingkungan):**
-Atur variabel ini sebelum menjalankan aplikasi Anda. Ini berfungsi untuk sebagian besar aplikasi Node.js (npm, yarn, skrip kustom).
-
-```bash
-export NODE_EXTRA_CA_CERTS="/jalur/ke/trustlab-root.crt"
-node server.js
-```
-
----
-
-## 3. Python (Requests/Pip)
-
-Pustaka `requests` di Python (dan `pip`) menggunakan paket sertifikatnya sendiri (`certifi`), mengabaikan penyimpanan sistem Windows/macOS/Linux.
-
-}>
- `SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed'))`
-
-
-**Solusi:**
-Arahkan ke Root CA Anda menggunakan variabel lingkungan.
-
-```bash
-export REQUESTS_CA_BUNDLE="/jalur/ke/trustlab-root.crt"
-python script.py
-```
-
----
-
-## 4. Aplikasi Java
-
-Java menggunakan "Keystore" (JKS) milik sendiri dan biasanya **mengabaikan** Windows Certificate Store.
-
-}>
- `sun.security.validator.ValidatorException: PKIX path building failed`
-
-
-**Solusi:**
-Anda harus mengimpor Root CA TrustLab ke dalam Java Keystore (cacerts).
-
-
-### Lokasi standar cacerts
-Biasanya di `$JAVA_HOME/lib/security/cacerts`.
-
-### Impor dengan keytool
-```bash
-keytool -import -trustcacerts -alias trustlab-root \
- -file trustlab-root.crt \
- -keystore "$JAVA_HOME/lib/security/cacerts"
-```
-*Kata sandi default biasanya adalah `changeit`.*
-
diff --git a/theme.config.tsx b/theme.config.tsx
index 506908c..50b3e8a 100644
--- a/theme.config.tsx
+++ b/theme.config.tsx
@@ -11,10 +11,7 @@ const config: DocsThemeConfig = {
),
logoLink: '/',
- i18n: [
- { locale: 'en', text: 'English' },
- { locale: 'id', text: 'Bahasa Indonesia' }
- ],
+
project: {
link: 'https://github.com/dyzulk/trustlab-docs',
},