diff --git a/components/front/services.tsx b/components/front/services.tsx
index 56be64b..c426d01 100644
--- a/components/front/services.tsx
+++ b/components/front/services.tsx
@@ -1,7 +1,7 @@
import Link from "next/link";
import { Nav } from "../core/nav";
import { services } from "@/config/services";
-import { TbArrowLeft, TbEye, TbShieldLock } from "react-icons/tb";
+import { TbArrowLeft, TbEye, TbLink, TbShieldLock } from "react-icons/tb";
function HumanPriceStatus(priceStatus: "open" | "invite-only" | "by-request") {
switch (priceStatus) {
@@ -111,7 +111,7 @@ export function ServicesShell({ slug }: { slug: string }) {
Privacy is a big concern to us, too. That's why we:
-
+
- Never share your data to third parties.
- Never use your data for advertising.
- Never use your data for any other purpose than to provide you with the service you have requested.
@@ -119,6 +119,25 @@ export function ServicesShell({ slug }: { slug: string }) {
- Provide additional options to manage your data.
+ {service?.quickLinks && (
+
+
+
+
+ Quick Links
+
+
+
+ {service.quickLinks.map((link, index) => (
+
+
+
+ ))}
+
+
+ )}
)
diff --git a/config/services.ts b/config/services.ts
index 9b065ba..fb4fea0 100644
--- a/config/services.ts
+++ b/config/services.ts
@@ -1,5 +1,21 @@
-import { SiForgejo, SiJellyfin, SiOllama } from "react-icons/si"
-import { TbBrowser, TbBubbleText, TbDeviceTv, TbGitBranch, TbKey, TbLink, TbLock, TbMail, TbServer, TbUser } from "react-icons/tb"
+import {
+ SiForgejo,
+ SiJellyfin,
+ SiOllama,
+} from "react-icons/si"
+import {
+ TbBrowser,
+ TbBubbleText,
+ TbDeviceTv,
+ TbGitBranch,
+ TbKey,
+ TbLink,
+ TbLock,
+ TbMail,
+ TbServer,
+ TbUser,
+ TbUserPlus,
+} from "react-icons/tb"
export interface Service {
name: string;
@@ -35,7 +51,24 @@ export const services = [
icon: TbLock,
description: "Your password can be changed by an admin. It is not visible.",
},
- }
+ },
+ quickLinks: [
+ {
+ name: "Create an Account",
+ url: "https://git.p0ntus.com/user/sign_up",
+ icon: TbUserPlus,
+ },
+ {
+ name: "Login",
+ url: "https://git.p0ntus.com/user/login",
+ icon: TbUser,
+ },
+ {
+ name: "Forgot Password",
+ url: "https://git.p0ntus.com/user/forgot_password",
+ icon: TbLock,
+ },
+ ]
},
{
name: "tv",
@@ -77,7 +110,7 @@ export const services = [
},
}
},
- {
+ /*{
name: "keybox",
description: "Need integrity? We do our best to provide you STRONG",
icon: TbKey,
@@ -97,7 +130,7 @@ export const services = [
description: "If you authenticate with SSO, your connections are visible to admins.",
},
}
- },
+ },*/
{
name: "mail",
description: "A private mail server with full data control. Powered by Mailu.",
@@ -117,7 +150,24 @@ export const services = [
icon: TbMail,
description: "Your email address is visible to admins.",
},
- }
+ },
+ quickLinks: [
+ {
+ name: "Create an Account",
+ url: "https://pontusmail.org/admin/user/signup",
+ icon: TbUserPlus,
+ },
+ {
+ name: "Login",
+ url: "https://pontusmail.org/sso/login",
+ icon: TbUser,
+ },
+ {
+ name: "Server Details",
+ url: "https://pontusmail.org/admin/client",
+ icon: TbServer,
+ },
+ ]
},
{
name: "hosting",
diff --git a/package.json b/package.json
index f5ecfe2..56b04ff 100644
--- a/package.json
+++ b/package.json
@@ -11,20 +11,20 @@
"dependencies": {
"@types/react-world-flags": "^1.6.0",
"next": "15.3.4",
- "react": "^19.0.0",
- "react-dom": "^19.0.0",
+ "react": "^19.1.0",
+ "react-dom": "^19.1.0",
"react-icons": "^5.5.0",
"react-world-flags": "^1.6.0"
},
"devDependencies": {
- "typescript": "^5",
- "@types/node": "^20",
- "@types/react": "^19",
- "@types/react-dom": "^19",
- "@tailwindcss/postcss": "^4",
- "tailwindcss": "^4",
- "eslint": "^9",
+ "typescript": "^5.8.3",
+ "@types/node": "^20.19.4",
+ "@types/react": "^19.1.8",
+ "@types/react-dom": "^19.1.6",
+ "@tailwindcss/postcss": "^4.1.11",
+ "tailwindcss": "^4.1.11",
+ "eslint": "^9.30.1",
"eslint-config-next": "15.3.4",
- "@eslint/eslintrc": "^3"
+ "@eslint/eslintrc": "^3.3.1"
}
}