From 18cc5fdf631663ec0e5f303a786e26f67a5e422d Mon Sep 17 00:00:00 2001 From: silentgeckoaudit3801 Date: Tue, 23 Jun 2026 00:08:07 -0600 Subject: [PATCH 1/3] feat: add shared landing nav config --- lib/landing-nav.ts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 lib/landing-nav.ts diff --git a/lib/landing-nav.ts b/lib/landing-nav.ts new file mode 100644 index 0000000..a1aac36 --- /dev/null +++ b/lib/landing-nav.ts @@ -0,0 +1,26 @@ +export type LandingNavLink = { + href: string; + label: string; + header?: boolean; + footer?: boolean; +}; + +export const landingNavLinks = [ + { href: "#problem", label: "Problem", header: true, footer: true }, + { href: "#solution", label: "Solution", header: true, footer: true }, + { href: "#how-it-works", label: "Process", header: true, footer: true }, + { href: "#partners", label: "Partners", header: true, footer: true }, + { href: "#score", label: "Score", header: true, footer: true }, + { href: "#tiers", label: "Tiers", footer: true }, + { href: "#faq", label: "FAQ", header: true, footer: true }, + { href: "#community", label: "Community", footer: true }, + { href: "#launch", label: "Launch", footer: true }, +] as const satisfies readonly LandingNavLink[]; + +export const headerLandingLinks = landingNavLinks.filter( + (link) => link.header +); + +export const footerLandingLinks = landingNavLinks.filter( + (link) => link.footer +); \ No newline at end of file From 78d1107c753d66fb1374dcc7e12dbef58b279e2a Mon Sep 17 00:00:00 2001 From: silentgeckoaudit3801 Date: Tue, 23 Jun 2026 00:09:08 -0600 Subject: [PATCH 2/3] feat: consume shared landing nav links --- components/landing/landing-nav.tsx | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/components/landing/landing-nav.tsx b/components/landing/landing-nav.tsx index 99ae0dc..908c322 100644 --- a/components/landing/landing-nav.tsx +++ b/components/landing/landing-nav.tsx @@ -6,13 +6,7 @@ import { Button } from "@/components/ui/button"; import { Logo } from "@/components/landing/logo"; import { cn } from "@/lib/utils"; import { getDappUrl } from "@/lib/site"; - -const NAV_LINKS = [ - { href: "#problem", label: "Problem" }, - { href: "#solution", label: "Solution" }, - { href: "#score", label: "Score" }, - { href: "#faq", label: "FAQ" }, -]; +import { headerLandingLinks } from "@/lib/landing-nav"; export function LandingNav() { const [open, setOpen] = useState(false); @@ -45,8 +39,8 @@ export function LandingNav() {
-
- {NAV_LINKS.map(({ href, label }) => ( +
+ {headerLandingLinks.map(({ href, label }) => (
- {NAV_LINKS.map(({ href, label }) => ( + {headerLandingLinks.map(({ href, label }) => ( ); -} +} \ No newline at end of file From 5752c9ca2911a635c00d9a87391a6097d21549ad Mon Sep 17 00:00:00 2001 From: silentgeckoaudit3801 Date: Tue, 23 Jun 2026 00:09:08 -0600 Subject: [PATCH 3/3] feat: sync footer landing links --- components/landing/footer.tsx | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/components/landing/footer.tsx b/components/landing/footer.tsx index c9b4e6f..a931671 100644 --- a/components/landing/footer.tsx +++ b/components/landing/footer.tsx @@ -1,14 +1,10 @@ import { Logo } from "@/components/landing/logo"; import { SocialButtons } from "@/components/landing/social-buttons"; import { getDappUrl, siteConfig } from "@/lib/site"; +import { footerLandingLinks } from "@/lib/landing-nav"; const FOOTER_LINKS = { - links: [ - { label: "Problem", href: "#problem" }, - { label: "Solution", href: "#solution" }, - { label: "FAQ", href: "#faq" }, - { label: "Contact", href: siteConfig.issues }, - ], + links: footerLandingLinks, resources: [ { label: "GitHub", href: siteConfig.github, external: true }, { label: "API", href: siteConfig.backendRepo, external: true }, @@ -36,7 +32,7 @@ export function Footer() {