diff --git a/pages/_app.tsx b/pages/_app.tsx
index acfd444..048541e 100644
--- a/pages/_app.tsx
+++ b/pages/_app.tsx
@@ -1,5 +1,5 @@
import '../styles/globals.css'
-
+
export default function App({ Component, pageProps }) {
return
}
diff --git a/pages/guide/certificates/_meta.json b/pages/guide/certificates/_meta.json
index 9f54b48..e8e7248 100644
--- a/pages/guide/certificates/_meta.json
+++ b/pages/guide/certificates/_meta.json
@@ -1,5 +1,6 @@
{
"request-new": "Requesting a Certificate",
+ "view-details": "View Details",
"download-install": "Download & Formats",
"renewal": "Renewal Process",
"revocation": "Revocation"
diff --git a/pages/guide/certificates/download-install.mdx b/pages/guide/certificates/download-install.mdx
index c9720de..5a00293 100644
--- a/pages/guide/certificates/download-install.mdx
+++ b/pages/guide/certificates/download-install.mdx
@@ -10,12 +10,16 @@ Once your certificate is issued, you can download it in various formats suitable
| **PFX / PKCS#12** | `.pfx`, `.p12` | IIS (Windows), Microsoft Exchange, Client Certificates (S/MIME). Contains both key and cert. |
| **JKS (Java)** | `.jks` | Java applications (Tomcat, Spring Boot). |
-## How to Download
+## How to Download (Copy & Save)
-1. Go to **"My Certificates"** in the dashboard.
-2. Click on the certificate ID or the **"View"** button.
-3. Scroll to the **"Downloads"** section.
-4. Select the format you need and click **Download**.
+The dashboard allows you to copy the raw certificate data directly.
+
+1. Navigate to **"My Certificates"** and click the **View (Eye Icon)** button on your certificate.
+2. **Certificate:** Scroll to the "Certificate (CRT)" section and click the **Copy Icon** in the top right. Paste this into a file named `domain.crt` or `domain.pem`.
+3. **Private Key:** Scroll to the "Private Key (KEY)" section, click **Show**, then click the **Copy Icon**. Paste this into a file named `domain.key`.
+
+> [!TIP]
+> Use a plain text editor (Notepad, VS Code, Nano) to save these files. Do not use Word or Rich Text editors.
> [!WARNING]
> The **Private Key** is generated securely. If you lose it, you cannot recover it. You must revoke and re-issue the certificate.
diff --git a/pages/guide/certificates/renewal.mdx b/pages/guide/certificates/renewal.mdx
index 15fc416..58d65a6 100644
--- a/pages/guide/certificates/renewal.mdx
+++ b/pages/guide/certificates/renewal.mdx
@@ -8,14 +8,17 @@ You will receive an email notification:
- **7 days** before expiration.
- **1 day** before expiration.
-## How to Renew
+## How to Renew (Manual Re-issue)
-1. Log in to TrustLab.
-2. Navigate to **"My Certificates"**.
-3. Identify certificates marked with the **"Expiring Soon"** badge.
-4. Click the **"Renew"** button next to the certificate.
-5. Review the details (CN, SANs). You can add or remove SANs at this stage.
-6. Click **Confirm Renewal**.
+To renew a certificate, you simply generate a fresh one with the same domain name.
+
+1. Go to **Certificates** and click **"Generate New"**.
+2. **Identity**: Enter the **same Common Name (CN)** as your expiring certificate.
+3. **Generate**: The system will issue a new certificate with a fresh validity period.
+4. **Replace**: Download the new `.crt` (and `.key` if you didn't reuse the CSI) and replace the files on your server.
+
+> [!NOTE]
+> The old certificate will remain valid until it expires naturally. You can safely delete it after verifying the new one works.
## What Happens Next?
- A **new certificate** is generated with a new validity period.
diff --git a/pages/guide/certificates/request-new.mdx b/pages/guide/certificates/request-new.mdx
index ab939ae..3879d9a 100644
--- a/pages/guide/certificates/request-new.mdx
+++ b/pages/guide/certificates/request-new.mdx
@@ -1,5 +1,5 @@
import { Steps, Callout, Cards, Card } from 'nextra/components'
-import { FileBadge, ShieldCheck, Globe, Code } from 'lucide-react'
+import { FileBadge, ShieldCheck, Globe, Code, Save, AlertTriangle } from 'lucide-react'
# Requesting a New Certificate
@@ -40,13 +40,14 @@ Toggle **"Manual Control"** if you need to override the default Identity fields
* **Country (C)**: ISO Code.
-### 4. Submit & Download
+### 4. Generate & Save
Click **Generate**.
-* **Private Key**: The system will prompt you to download the `.key` file. **This is the only time it is available.**
-* **Certificate**: The `.pem` / `.crt` file will be available for download immediately.
+* The **Certificate (.pem)** and **Private Key (.key)** will be generated.
+* You can copy them immediately or access them later from the **Certificate Details** page.
+
+}>
+ **Storage:** Your Private Key is securely stored. You can view it anytime by clicking **"View Details"** on the certificate list.
+
-
- **Security:** Your **Private Key** is shown/downloaded **ONLY ONCE**. Store it securely immediately. If lost, you must revoke and reissue the certificate.
-
diff --git a/pages/guide/certificates/revocation.mdx b/pages/guide/certificates/revocation.mdx
index e6d87a0..4439cee 100644
--- a/pages/guide/certificates/revocation.mdx
+++ b/pages/guide/certificates/revocation.mdx
@@ -7,17 +7,16 @@ Revocation invalidates a certificate before its expiration date. This is critica
- **Service Change**: The domain name effectively no longer belongs to the service.
- **Mistake**: The certificate was issued with incorrect details.
-## How to Revoke
+## How to Remove / Revoke
-1. Open the Certificate Detail page.
-2. Click the **"Revoke"** button (Danger Zone).
-3. Select a **Reason Code**:
- - `unspecified` (0)
- - `keyCompromise` (1)
- - `cACompromise` (2)
- - `superseded` (4)
- - `cessationOfOperation` (5)
-4. Confirm the action.
+If a certificate is compromised or no longer needed, you can remove it from the system.
+
+1. Go to the **Certificates** list.
+2. Identify the certificate to remove.
+3. Click the **Trash Icon** (Delete) on the right side of the row.
+4. **Confirm**: Type `DELETE` in the confirmation modal to permanently remove the certificate and its private key from TrustLab.
+
+
## CRL (Certificate Revocation List)
Once revoked, the certificate serial number is added to the TrustLab CRL. All clients checking the CRL will immediately reject the certificate.
diff --git a/pages/guide/certificates/view-details.mdx b/pages/guide/certificates/view-details.mdx
new file mode 100644
index 0000000..ad322f6
--- /dev/null
+++ b/pages/guide/certificates/view-details.mdx
@@ -0,0 +1,40 @@
+import { Callout } from 'nextra/components'
+import { ShieldAlert } from 'lucide-react'
+
+# Viewing Certificate Details
+
+After generating a certificate, you can view its full metadata, download the files, or retrieve the Private Key at any time.
+
+## Certificate List
+The main **Certificates** page lists all issuing certificates.
+* **Status Indicators**: Quickly see if a cert is `Valid`, `Expired`, or `Revoked`.
+* **Search**: Filter by Common Name or Serial Number.
+
+
+
+## Details View
+Clicking the **View Icon** (Eye) or the row opens the detailed management view.
+
+
+
+### 1. Metadata
+The top section displays critical information:
+* **Validity Period**: Start and End dates.
+* **Issuer**: The CA that signed this certificate.
+* **Subject Info**: Organization, Location, and Country.
+* **Key Strength**: 2048-bit or 4096-bit.
+
+### 2. Certificate (CRT)
+This text box contains the public certificate in **PEM format** (`-----BEGIN CERTIFICATE-----`).
+* **Copy**: Click the **Copy Icon** to copy the full block.
+* This is safe to share publicly.
+
+### 3. Private Key (KEY)
+This section contains your secret Private Key.
+* **Hidden by Default**: The specific key content is blurred/hidden for security.
+* **Show**: Click the **"Show"** button to reveal the key.
+* **Copy**: Click the **Copy Icon** to retrieve it.
+
+}>
+ **Security Warning:** Never share your Private Key. Anyone with this key can impersonate your server.
+
diff --git a/pages/guide/getting-started/access-dashboard.mdx b/pages/guide/getting-started/access-dashboard.mdx
index ea9f625..f65bd8c 100644
--- a/pages/guide/getting-started/access-dashboard.mdx
+++ b/pages/guide/getting-started/access-dashboard.mdx
@@ -1,5 +1,5 @@
import { Callout, Steps, Cards, Card } from 'nextra/components'
-import { Monitor, Smartphone, LayoutDashboard, Key, Shield } from 'lucide-react'
+import { Monitor, Smartphone, LayoutDashboard, Key, Shield, Info, Clock, AlertTriangle } from 'lucide-react'
# Accessing Dashboard
@@ -19,7 +19,7 @@ We prioritize security by offering modern, passwordless authentication options.
### 1. Single Sign-On (SSO)
The fastest way to log in. Click **Continue with Google** or **Continue with GitHub**.
-
+}>
**SSO Behavior:**
* **Existing Users:** You can only Log In via SSO if your social email address is already registered/linked to your account.
* **New Users:** You can **Register** a new account instantly by clicking the Social Login buttons on the *Sign In* or *Register* page.
@@ -39,7 +39,7 @@ You will receive an email with a unique, time-sensitive login link.
Click the **"Sign in to TrustLab"** button in the email. You will be instantly logged in to the dashboard.
-
+}>
**Expiration:** Magic links are valid for **15 minutes** only. If it expires, simply request a new one by entering your email again.
diff --git a/pages/guide/getting-started/install-root-ca.mdx b/pages/guide/getting-started/install-root-ca.mdx
index aca048a..5a420bc 100644
--- a/pages/guide/getting-started/install-root-ca.mdx
+++ b/pages/guide/getting-started/install-root-ca.mdx
@@ -1,5 +1,5 @@
import { Tabs, Steps, Cards, Card, Callout } from 'nextra/components'
-import { Monitor, Smartphone } from 'lucide-react'
+import { Monitor, Smartphone, AlertTriangle, Info } from 'lucide-react'
# Installing Root CA
@@ -43,11 +43,11 @@ Select your distribution to get the optimized installation command:
} title="macOS / iOS Profile (.mobileconfig)" href="https://cdn.trustlab.dyzulk.com/ca/bundles/trustlab-all.mobileconfig" arrow />
-
+}>
**Windows Users:** You **MUST** right-click the `.bat` file and select **"Run as Administrator"**. Double-clicking directly will likely fail due to permission restrictions.
-
+}>
**Apple Users:** After downloading the profile, go to **System Settings > Privacy & Security > Profiles** to install it. For iOS, see the *Individual Installation* section below for detailed trust steps.
diff --git a/public/images/guide/certificate_management_view_1767869044987.png b/public/images/guide/certificate_management_view_1767869044987.png
new file mode 100644
index 0000000..69122f0
Binary files /dev/null and b/public/images/guide/certificate_management_view_1767869044987.png differ
diff --git a/public/images/guide/certificates_list_view_1767869137654.png b/public/images/guide/certificates_list_view_1767869137654.png
new file mode 100644
index 0000000..575d447
Binary files /dev/null and b/public/images/guide/certificates_list_view_1767869137654.png differ