From ff4adba2fb20b67366a00371c054a5741a60a8a0 Mon Sep 17 00:00:00 2001 From: Rami Bitar Date: Wed, 5 Aug 2026 15:03:36 -0400 Subject: [PATCH] Render the header and footer from the root layout Every page was importing Header and Footer and repeating the same store name, logo, copyright and nav links. Hoisting both into the root layout renders them once, and a new config/site.ts holds the values they shared. The body becomes a flex column so the footer sits at the bottom of short pages. not-found and error now render inside that chrome, so their full-viewport centering drops to 60vh. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01D1vsTA4MX6qFd7nqSAKtdV --- app/account/activate/[id]/[token]/page.tsx | 42 +++++------- app/account/login/page.tsx | 64 +++++++++--------- app/account/page.tsx | 30 ++++----- app/account/recover/page.tsx | 36 +++++----- app/account/register/page.tsx | 76 ++++++++++------------ app/account/reset/[id]/[token]/page.tsx | 40 +++++------- app/collections/[handle]/page.tsx | 20 +----- app/collections/page.tsx | 20 +----- app/error.tsx | 2 +- app/layout.tsx | 15 ++++- app/not-found.tsx | 2 +- app/page.tsx | 24 ++----- app/policies/[handle]/page.tsx | 40 ++++-------- app/products/[handle]/page.tsx | 14 ---- app/search/page.tsx | 26 ++------ app/shop/collections/page.tsx | 20 +----- config/site.ts | 12 ++++ 17 files changed, 174 insertions(+), 309 deletions(-) create mode 100644 config/site.ts diff --git a/app/account/activate/[id]/[token]/page.tsx b/app/account/activate/[id]/[token]/page.tsx index 199e1ef..c6d5dc1 100644 --- a/app/account/activate/[id]/[token]/page.tsx +++ b/app/account/activate/[id]/[token]/page.tsx @@ -1,5 +1,3 @@ -import Header from '@/components/shopify/header'; -import Footer from '@/components/shopify/footer'; import AccountForm from '@/components/shopify/account-form'; export const metadata = { title: 'Activate your account — Shop' }; @@ -13,27 +11,23 @@ export default async function Page({ const { id, token } = await params; return ( - <> -
-
- -
-