29 Commits

Author SHA1 Message Date
06a11fcac3 Update src/app/shop/page.tsx 2026-02-23 13:54:23 +00:00
9349a745ed Update src/app/page.tsx 2026-02-23 13:54:22 +00:00
9d4215b9c1 Update src/app/layout.tsx 2026-02-23 13:54:21 +00:00
1023d56148 Update src/app/contacts/page.tsx 2026-02-23 13:54:20 +00:00
653a7cf295 Update src/app/blog/page.tsx 2026-02-23 13:54:20 +00:00
cb7c41461d Update src/app/styles/variables.css 2026-02-23 13:51:51 +00:00
da6968c158 Update src/app/shop/page.tsx 2026-02-23 13:51:50 +00:00
c145e178ef Update src/app/shop/[id]/page.tsx 2026-02-23 13:51:49 +00:00
3724a927d7 Update src/app/page.tsx 2026-02-23 13:51:48 +00:00
a88d87ccfb Update src/app/layout.tsx 2026-02-23 13:51:48 +00:00
10d0db4bd5 Update src/app/contacts/page.tsx 2026-02-23 13:51:47 +00:00
5d13ce7a68 Update src/app/blog/page.tsx 2026-02-23 13:51:46 +00:00
fde33834c9 Merge version_3 into main
Merge version_3 into main
2026-02-23 13:17:58 +00:00
586dcdca2b Update src/app/page.tsx 2026-02-23 13:17:53 +00:00
eacc9dde3c Update src/app/contacts/page.tsx 2026-02-23 13:17:52 +00:00
b8ebf194d7 Merge version_3 into main
Merge version_3 into main
2026-02-23 13:17:12 +00:00
9b81713fa3 Update src/app/shop/page.tsx 2026-02-23 13:17:07 +00:00
7ba01b8237 Update src/app/shop/[id]/page.tsx 2026-02-23 13:17:06 +00:00
42e1720b1b Update src/app/page.tsx 2026-02-23 13:17:05 +00:00
e3f57df1d2 Update src/app/contacts/page.tsx 2026-02-23 13:17:05 +00:00
53df64e794 Update src/app/blog/page.tsx 2026-02-23 13:17:04 +00:00
452726c310 Merge version_3 into main
Merge version_3 into main
2026-02-23 13:15:06 +00:00
04ebffdbfe Update src/app/shop/page.tsx 2026-02-23 13:15:01 +00:00
4e37541d41 Update src/app/shop/[id]/page.tsx 2026-02-23 13:15:01 +00:00
a7ab431eef Merge version_2 into main
Merge version_2 into main
2026-02-23 13:11:53 +00:00
25c13875b0 Merge version_2 into main
Merge version_2 into main
2026-02-23 13:09:55 +00:00
484b592ef4 Merge version_2 into main
Merge version_2 into main
2026-02-23 13:08:18 +00:00
db0aadafa1 Merge version_2 into main
Merge version_2 into main
2026-02-23 12:52:32 +00:00
4f1cec454c Merge version_2 into main
Merge version_2 into main
2026-02-23 12:49:52 +00:00
7 changed files with 50 additions and 62 deletions

View File

@@ -6,6 +6,7 @@ import { useBlogPosts } from "@/hooks/useBlogPosts";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered'; import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import BlogCardOne from '@/components/sections/blog/BlogCardOne'; import BlogCardOne from '@/components/sections/blog/BlogCardOne';
import FooterMedia from '@/components/sections/footer/FooterMedia'; import FooterMedia from '@/components/sections/footer/FooterMedia';
import Link from 'next/link';
export default function BlogPage() { export default function BlogPage() {
const { posts, isLoading } = useBlogPosts(); const { posts, isLoading } = useBlogPosts();
@@ -17,7 +18,7 @@ export default function BlogPage() {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"

View File

@@ -4,6 +4,7 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered'; import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm'; import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterMedia from '@/components/sections/footer/FooterMedia'; import FooterMedia from '@/components/sections/footer/FooterMedia';
import Link from 'next/link';
export default function ContactsPage() { export default function ContactsPage() {
return ( return (
@@ -13,7 +14,7 @@ export default function ContactsPage() {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"
@@ -43,7 +44,8 @@ export default function ContactsPage() {
]} ]}
textarea={{ name: "message", placeholder: "Tell us more...", rows: 5, required: true }} textarea={{ name: "message", placeholder: "Tell us more...", rows: 5, required: true }}
buttonText="Send Message" buttonText="Send Message"
videoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3A47KqSdGj7sEG8mcGU4TIVm5ml/uploaded-1771850674704-2zcygfwe.mp4" imageSrc="/placeholders/placeholder1.webp?_wi=2"
videoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3A47KqSdGj7sEG8mcGU4TIVm5ml/uploaded-1771850674704-2zcygfwe.mp4?_wi=2"
imageAlt="People contacting a business" imageAlt="People contacting a business"
mediaAnimation="slide-up" mediaAnimation="slide-up"
mediaPosition="right" mediaPosition="right"

View File

@@ -1,25 +1,12 @@
import type { Metadata } from "next"; import type { Metadata } from "next";
import { Plus_Jakarta_Sans } from "next/font/google"; import { Inter } from "next/font/google";
import "./globals.css"; import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper"; import "../styles/variables.css";
import Tag from "@/tag/Tag";
const plusJakartaSans = Plus_Jakarta_Sans({ const inter = Inter({ subsets: ["latin"] });
variable: "--font-plus-jakarta-sans", subsets: ["latin"],
});
export const metadata: Metadata = { export const metadata: Metadata = {
title: "Find Mouse | Fresh Milk & Artisanal Cheese", description: "Discover farm-fresh milk and handcrafted artisanal cheeses from Find Mouse. Quality dairy products made with tradition and care.", keywords: ["milk", "cheese", "dairy", "artisanal", "farm fresh", "natural", "organic", "cheddar", "goat cheese", "yogurt", "butter"], title: "Find Mouse", description: "Discover the wholesome goodness of our farm-fresh milk and handcrafted cheeses, made with passion and tradition."};
openGraph: {
title: "Find Mouse | Fresh Milk & Artisanal Cheese", description: "Discover farm-fresh milk and handcrafted artisanal cheeses from Find Mouse. Quality dairy products made with tradition and care.", url: "/", siteName: "Find Mouse", images: [
{
url: "https://img.b2bpic.net/free-photo/different-types-cheese-wooden-background-composition-delicatessen-concept-gourmet-cheeses_169016-4622.jpg", alt: "Find Mouse dairy products on a rustic table"},
],
type: "website"},
twitter: {
card: "summary_large_image", title: "Find Mouse | Fresh Milk & Artisanal Cheese", description: "Discover farm-fresh milk and handcrafted artisanal cheeses from Find Mouse. Quality dairy products made with tradition and care.", images: ["https://img.b2bpic.net/free-photo/different-types-cheese-wooden-background-composition-delicatessen-concept-gourmet-cheeses_169016-4622.jpg"],
},
};
export default function RootLayout({ export default function RootLayout({
children, children,
@@ -27,14 +14,8 @@ export default function RootLayout({
children: React.ReactNode; children: React.ReactNode;
}>) { }>) {
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="en">
<ServiceWrapper> <body className={inter.className}>{children}
<body
className={`${plusJakartaSans.variable} antialiased`}
>
<Tag />
{children}
<script <script
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{
__html: ` __html: `
@@ -1402,7 +1383,6 @@ export default function RootLayout({
}} }}
/> />
</body> </body>
</ServiceWrapper>
</html> </html>
); );
} }

View File

@@ -11,6 +11,7 @@ import FaqDouble from '@/components/sections/faq/FaqDouble';
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm'; import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterMedia from '@/components/sections/footer/FooterMedia'; import FooterMedia from '@/components/sections/footer/FooterMedia';
import { CookingPot, Egg, Milk, Sparkles, Sprout } from "lucide-react"; import { CookingPot, Egg, Milk, Sparkles, Sprout } from "lucide-react";
import Link from 'next/link';
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -20,7 +21,7 @@ export default function LandingPage() {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"
@@ -28,7 +29,7 @@ export default function LandingPage() {
> >
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleCentered <NavbarStyleCentered
navItems={[{name:"About",id:"/#about"},{name:"Products",id:"/#products"},{name:"Testimonials",id:"/#testimonials"},{name:"FAQ",id:"/#faq"},{name:"Contact",id:"/contacts"}]} navItems={[{name:"Home", id: "/"}, {name:"About",id:"/#about"},{name:"Products",id:"/#products"},{name:"Testimonials",id:"/#testimonials"},{name:"FAQ",id:"/#faq"},{name:"Contact",id:"/contacts"}]}
button={{text:"Shop Now",href:"/shop"}} button={{text:"Shop Now",href:"/shop"}}
brandName="Find Mouse" brandName="Find Mouse"
/> />
@@ -119,8 +120,8 @@ export default function LandingPage() {
inputs={[{name:"name",type:"text",placeholder:"Your Name",required:true},{name:"email",type:"email",placeholder:"Your Email",required:true}]} inputs={[{name:"name",type:"text",placeholder:"Your Name",required:true},{name:"email",type:"email",placeholder:"Your Email",required:true}]}
textarea={{name:"message",placeholder:"Tell us more...",rows:5,required:true}} textarea={{name:"message",placeholder:"Tell us more...",rows:5,required:true}}
buttonText="Send Message" buttonText="Send Message"
imageSrc="/placeholders/placeholder1.webp" imageSrc="/placeholders/placeholder1.webp?_wi=1"
videoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3A47KqSdGj7sEG8mcGU4TIVm5ml/uploaded-1771850674704-2zcygfwe.mp4" videoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3A47KqSdGj7sEG8mcGU4TIVm5ml/uploaded-1771850674704-2zcygfwe.mp4?_wi=1"
imageAlt="Country road leading to a dairy farm" imageAlt="Country road leading to a dairy farm"
mediaAnimation="slide-up" mediaAnimation="slide-up"
mediaPosition="right" mediaPosition="right"

View File

@@ -11,6 +11,7 @@ import ProductCart from "@/components/ecommerce/cart/ProductCart";
import { useProductDetail } from "@/hooks/useProductDetail"; import { useProductDetail } from "@/hooks/useProductDetail";
import { useCart } from "@/hooks/useCart"; import { useCart } from "@/hooks/useCart";
import { useCheckout } from "@/hooks/useCheckout"; import { useCheckout } from "@/hooks/useCheckout";
import Link from 'next/link';
interface ProductPageProps { interface ProductPageProps {
params: Promise<{ id: string }>; params: Promise<{ id: string }>;
@@ -94,7 +95,8 @@ function ProductPageContent({ params }: ProductPageProps) {
{ title: "About Us", items: [{ label: "Our Story", href: "/#about" }, { label: "Sustainability", href: "/#about" }, { label: "Team", href: "#" }] }, { title: "About Us", items: [{ label: "Our Story", href: "/#about" }, { label: "Sustainability", href: "/#about" }, { label: "Team", href: "#" }] },
{ title: "Support", items: [{ label: "FAQ", href: "/#faq" }, { label: "Contact", href: "/contacts" }, { label: "Privacy Policy", href: "#" }] } { title: "Support", items: [{ label: "FAQ", href: "/#faq" }, { label: "Contact", href: "/contacts" }, { label: "Privacy Policy", href: "#" }] }
], ],
logoText: "Find Mouse", copyrightText: "© 2024 Find Mouse. All rights reserved."}; logoText: "Find Mouse", copyrightText: "© 2024 Find Mouse. All rights reserved."
};
if (isLoading) { if (isLoading) {
return ( return (
@@ -104,7 +106,7 @@ function ProductPageContent({ params }: ProductPageProps) {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"
@@ -133,7 +135,7 @@ function ProductPageContent({ params }: ProductPageProps) {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"
@@ -169,7 +171,7 @@ function ProductPageContent({ params }: ProductPageProps) {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"

View File

@@ -6,10 +6,11 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered'; import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import FooterMedia from '@/components/sections/footer/FooterMedia'; import FooterMedia from '@/components/sections/footer/FooterMedia';
import ProductCatalog from "@/components/ecommerce/productCatalog/ProductCatalog"; import ProductCatalog from "@/components/ecommerce/productCatalog/ProductCatalog";
import ProductCart from "@/components/ecommerce/cart/ProductCart";
import { useProductCatalog } from "@/hooks/useProductCatalog"; import { useProductCatalog } from "@/hooks/useProductCatalog";
import { useCart } from "@/hooks/useCart"; import { useCart } from "@/hooks/useCart";
import { useCheckout } from "@/hooks/useCheckout"; import { useCheckout } from "@/hooks/useCheckout";
import ProductCart from "@/components/ecommerce/cart/ProductCart"; import Link from 'next/link';
function ShopPageContent() { function ShopPageContent() {
const { const {
@@ -61,7 +62,8 @@ function ShopPageContent() {
{ title: "About Us", items: [{ label: "Our Story", href: "/#about" }, { label: "Sustainability", href: "/#about" }, { label: "Team", href: "#" }] }, { title: "About Us", items: [{ label: "Our Story", href: "/#about" }, { label: "Sustainability", href: "/#about" }, { label: "Team", href: "#" }] },
{ title: "Support", items: [{ label: "FAQ", href: "/#faq" }, { label: "Contact", href: "/contacts" }, { label: "Privacy Policy", href: "#" }] } { title: "Support", items: [{ label: "FAQ", href: "/#faq" }, { label: "Contact", href: "/contacts" }, { label: "Privacy Policy", href: "#" }] }
], ],
logoText: "Find Mouse", copyrightText: "© 2024 Find Mouse. All rights reserved."}; logoText: "Find Mouse", copyrightText: "© 2024 Find Mouse. All rights reserved."
};
if (isLoading) { if (isLoading) {
return ( return (
@@ -71,7 +73,7 @@ function ShopPageContent() {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"
@@ -99,7 +101,7 @@ function ShopPageContent() {
borderRadius="pill" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="mediumLargeSizeLargeTitles" sizing="mediumLargeSizeLargeTitles"
background="aurora" background="noise"
cardStyle="glass-depth" cardStyle="glass-depth"
primaryButtonStyle="gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="layered"

View File

@@ -2,23 +2,23 @@
/* Base units */ /* Base units */
/* --vw is set by ThemeProvider */ /* --vw is set by ThemeProvider */
/* --background: #f7f6f7;; /* --background: #ffffff;;
--card: #ffffff;; --card: #f0f0f0;;
--foreground: #25190c;; --foreground: #000000;;
--primary-cta: #ff6207;; --primary-cta: #000000;;
--secondary-cta: #ffffff;; --secondary-cta: #f0f0f0;;
--accent: #ffce93;; --accent: #505050;;
--background-accent: #e8cfa8;; */ --background-accent: #e0e0e0;; */
--background: #f7f6f7;; --background: #ffffff;;
--card: #ffffff;; --card: #f0f0f0;;
--foreground: #25190c;; --foreground: #000000;;
--primary-cta: #ff6207;; --primary-cta: #000000;;
--primary-cta-text: #f7f6f7;; --primary-cta-text: #ffffff;;
--secondary-cta: #ffffff;; --secondary-cta: #f0f0f0;;
--secondary-cta-text: #25190c;; --secondary-cta-text: #000000;;
--accent: #ffce93;; --accent: #505050;;
--background-accent: #e8cfa8;; --background-accent: #e0e0e0;;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);