From 3cd4eebddda189f7e0f15ede9df3e4d1cdd8a668 Mon Sep 17 00:00:00 2001 From: Innei Date: Tue, 12 Aug 2025 23:18:59 +0800 Subject: [PATCH] feat(footer): add PoweredByFooter component for enhanced branding - Introduced a new PoweredByFooter component to display copyright information and social media links. - Updated layout and styling for better responsiveness and visual appeal. - Removed the old PoweredByFooter implementation from the internal components. These changes collectively enhance the user experience by providing a consistent branding element across the application. Signed-off-by: Innei --- .../components/common/PoweredByFooter.tsx | 63 +++++++++++++++++++ .../client/components/layout/header/index.tsx | 63 +++++++++---------- apps/ssr/client/pages/layout.tsx | 2 +- .../components/src/common/PoweredByFooter.tsx | 49 --------------- 4 files changed, 94 insertions(+), 83 deletions(-) create mode 100644 apps/ssr/client/components/common/PoweredByFooter.tsx delete mode 100644 packages/internal/components/src/common/PoweredByFooter.tsx diff --git a/apps/ssr/client/components/common/PoweredByFooter.tsx b/apps/ssr/client/components/common/PoweredByFooter.tsx new file mode 100644 index 000000000..0fa0a5986 --- /dev/null +++ b/apps/ssr/client/components/common/PoweredByFooter.tsx @@ -0,0 +1,63 @@ +import { SocialMediaLinks } from "@follow/constants" +import { cn } from "@follow/utils/utils" + +export const PoweredByFooter: Component = ({ className }) => ( + +) diff --git a/apps/ssr/client/components/layout/header/index.tsx b/apps/ssr/client/components/layout/header/index.tsx index b2a1a87a5..f7c4857bd 100644 --- a/apps/ssr/client/components/layout/header/index.tsx +++ b/apps/ssr/client/components/layout/header/index.tsx @@ -1,6 +1,5 @@ import { Folo } from "@follow/components/icons/folo.js" import { Logo } from "@follow/components/icons/logo.jsx" -import { SocialMediaLinks } from "@follow/constants" import { cn } from "@follow/utils/utils" import type { MotionValue } from "motion/react" import { m, useMotionValueEvent, useScroll } from "motion/react" @@ -42,7 +41,7 @@ const HeaderWrapper: Component = (props) => { className={cn( "rounded-full border border-transparent px-6 transition-all duration-300 ease-out", "relative flex items-center", - isCompact ? "py-2" : "py-3", + isCompact ? "py-2 pl-5 pr-2" : "py-3", isHeaderElevated && [ "border-border/50 bg-background/80 shadow-sm backdrop-blur-xl", "supports-[backdrop-filter]:bg-background/60", @@ -90,41 +89,39 @@ export const Header = () => { - {/* Enhanced Social Links Section */} -
-
+ {/* GitHub stars pill */} + - {SocialMediaLinks.map((link) => ( - - + + GitHub + - {/* Subtle hover effect */} -
- - ))} -
+ {/* Sign in pill */} + + Sign in +
diff --git a/apps/ssr/client/pages/layout.tsx b/apps/ssr/client/pages/layout.tsx index 14345fa83..28cf2938d 100644 --- a/apps/ssr/client/pages/layout.tsx +++ b/apps/ssr/client/pages/layout.tsx @@ -1,6 +1,6 @@ +import { PoweredByFooter } from "@client/components/common/PoweredByFooter" import { Header } from "@client/components/layout/header" import { MemoedDangerousHTMLStyle } from "@follow/components/common/MemoedDangerousHTMLStyle.jsx" -import { PoweredByFooter } from "@follow/components/common/PoweredByFooter.jsx" import { Outlet } from "react-router" export const Component = () => { diff --git a/packages/internal/components/src/common/PoweredByFooter.tsx b/packages/internal/components/src/common/PoweredByFooter.tsx deleted file mode 100644 index 190cd1d55..000000000 --- a/packages/internal/components/src/common/PoweredByFooter.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import { cn } from "@follow/utils/utils" - -export const PoweredByFooter: Component = ({ className }) => ( - -)