diff --git a/messages/en.json b/messages/en.json
index 3d3d885..d42be37 100644
--- a/messages/en.json
+++ b/messages/en.json
@@ -163,6 +163,6 @@
"quickLinksTitle": "Quick Links",
"connectTitle": "Connect",
"backToTop": "Back to top",
- "copyright": "Yolando. All Rights Reserved."
+ "copyright": "Simanullang Dev. All Rights Reserved."
}
-}
\ No newline at end of file
+}
diff --git a/messages/id.json b/messages/id.json
index d521204..a84a377 100644
--- a/messages/id.json
+++ b/messages/id.json
@@ -163,6 +163,6 @@
"quickLinksTitle": "Tautan Cepat",
"connectTitle": "Terhubung",
"backToTop": "Kembali ke atas",
- "copyright": "Yolando. Semua Hak Cipta Dilindungi."
+ "copyright": "Simanullang Dev. Semua Hak Cipta Dilindungi."
}
-}
\ No newline at end of file
+}
diff --git a/public/brand/.gitkeep b/public/brand/.gitkeep
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/public/brand/.gitkeep
@@ -0,0 +1 @@
+
diff --git a/public/brand/icon.png b/public/brand/icon.png
new file mode 100644
index 0000000..8b9442b
Binary files /dev/null and b/public/brand/icon.png differ
diff --git a/public/uploads/1775219874524-graphic_Fitures.jpg b/public/uploads/1775219874524-graphic_Fitures.jpg
new file mode 100644
index 0000000..edb288f
Binary files /dev/null and b/public/uploads/1775219874524-graphic_Fitures.jpg differ
diff --git a/public/uploads/1775219874526-Group_13.png b/public/uploads/1775219874526-Group_13.png
new file mode 100644
index 0000000..effe0c0
Binary files /dev/null and b/public/uploads/1775219874526-Group_13.png differ
diff --git a/src/shared/components/brand-logo.tsx b/src/shared/components/brand-logo.tsx
new file mode 100644
index 0000000..e0bd07f
--- /dev/null
+++ b/src/shared/components/brand-logo.tsx
@@ -0,0 +1,53 @@
+"use client";
+
+import Image from "next/image";
+import { useState } from "react";
+
+type BrandLogoProps = {
+ href?: string;
+ className?: string;
+ iconClassName?: string;
+ textClassName?: string;
+ iconSize?: number;
+ priority?: boolean;
+};
+
+export function BrandLogo({
+ href = "#",
+ className = "",
+ iconClassName = "",
+ textClassName = "font-mono font-bold text-lg tracking-tight",
+ iconSize = 36,
+ priority = false,
+}: BrandLogoProps) {
+ const [imageFailed, setImageFailed] = useState(false);
+
+ return (
+
+
{t("description")} diff --git a/src/shared/components/navbar.tsx b/src/shared/components/navbar.tsx index 4cb4b98..ae92a86 100644 --- a/src/shared/components/navbar.tsx +++ b/src/shared/components/navbar.tsx @@ -4,6 +4,7 @@ import { useState, useEffect, useTransition } from "react"; import { motion, AnimatePresence } from "framer-motion"; import { Menu, X, Languages } from "lucide-react"; import { ThemeToggle } from "@/shared/components/theme-toggle"; +import { BrandLogo } from "@/shared/components/brand-logo"; import { useTranslations, useLocale } from "next-intl"; import { usePathname, useRouter } from "@/i18n/routing"; @@ -72,15 +73,10 @@ export function Navbar() { }`} >