diff --git a/package.json b/package.json
index 6151a6f..686519b 100644
--- a/package.json
+++ b/package.json
@@ -1,5 +1,5 @@
{
- "name": "sanihome-tmp",
+ "name": "sanihome",
"version": "0.1.0",
"private": true,
"scripts": {
diff --git a/prompt.txt b/prompt.txt
new file mode 100644
index 0000000..340d913
--- /dev/null
+++ b/prompt.txt
@@ -0,0 +1,25 @@
+Create a website for home appliances store
+
+Create sample content
+Lang:fa
+Directions: rtl
+Use next js
+Color palette is red and dark red - light theme
+
+Design only homepage
+Use Persian font like iran-yekan or kalameh or iran sans and some cool English font
+Do not use images - show only placeholders with sizes
+
+Sections are:
+Top header bar
+Header
+Slider- one slide in center and two slide beside each side be visible
+Featured categories
+Product Special sale carousel
+Two banner
+Product Top selling carousel
+3 banner
+Samsung brand product carousel
+About sanihome
+Latest blog carousel
+footer
\ No newline at end of file
diff --git a/src/app/globals.css b/src/app/globals.css
index a2dc41e..481eab9 100644
--- a/src/app/globals.css
+++ b/src/app/globals.css
@@ -1,26 +1,84 @@
@import "tailwindcss";
:root {
- --background: #ffffff;
- --foreground: #171717;
+ --background: #fafafa;
+ --foreground: #1a1a1a;
+ --surface: #ffffff;
+ --muted: #6b7280;
+ --border: #e5e7eb;
+ --red: #dc2626;
+ --red-dark: #991b1b;
+ --red-light: #fef2f2;
+ --red-muted: #fca5a5;
}
@theme inline {
--color-background: var(--background);
--color-foreground: var(--foreground);
- --font-sans: var(--font-geist-sans);
- --font-mono: var(--font-geist-mono);
+ --color-surface: var(--surface);
+ --color-muted: var(--muted);
+ --color-border: var(--border);
+ --color-red: var(--red);
+ --color-red-dark: var(--red-dark);
+ --color-red-light: var(--red-light);
+ --color-red-muted: var(--red-muted);
+ --font-sans: var(--font-vazirmatn);
+ --font-display: var(--font-syne);
}
-@media (prefers-color-scheme: dark) {
- :root {
- --background: #0a0a0a;
- --foreground: #ededed;
- }
+* {
+ box-sizing: border-box;
+}
+
+html {
+ scroll-behavior: smooth;
}
body {
background: var(--background);
color: var(--foreground);
- font-family: Arial, Helvetica, sans-serif;
+ font-family: var(--font-vazirmatn), system-ui, sans-serif;
+}
+
+.font-display {
+ font-family: var(--font-syne), var(--font-vazirmatn), sans-serif;
+}
+
+@keyframes fade-up {
+ from {
+ opacity: 0;
+ transform: translateY(16px);
+ }
+ to {
+ opacity: 1;
+ transform: translateY(0);
+ }
+}
+
+@keyframes slide-in {
+ from {
+ opacity: 0;
+ transform: translateX(24px);
+ }
+ to {
+ opacity: 1;
+ transform: translateX(0);
+ }
+}
+
+.animate-fade-up {
+ animation: fade-up 0.6s ease-out both;
+}
+
+.animate-slide-in {
+ animation: slide-in 0.5s ease-out both;
+}
+
+.carousel-track {
+ scrollbar-width: none;
+ -ms-overflow-style: none;
+}
+
+.carousel-track::-webkit-scrollbar {
+ display: none;
}
diff --git a/src/app/layout.tsx b/src/app/layout.tsx
index 9852c15..f9056df 100644
--- a/src/app/layout.tsx
+++ b/src/app/layout.tsx
@@ -1,27 +1,30 @@
import type { Metadata } from "next";
-import { Geist, Geist_Mono } from "next/font/google";
+import { Vazirmatn, Syne } from "next/font/google";
import "./globals.css";
-const geistSans = Geist({
- variable: "--font-geist-sans",
- subsets: ["latin"],
+const vazirmatn = Vazirmatn({
+ variable: "--font-vazirmatn",
+ subsets: ["arabic", "latin"],
+ weight: ["400", "500", "600", "700"],
});
-const geistMono = Geist_Mono({
- variable: "--font-geist-mono",
+const syne = Syne({
+ variable: "--font-syne",
subsets: ["latin"],
+ weight: ["600", "700", "800"],
});
export const metadata: Metadata = {
- title: "Create Next App",
- description: "Generated by create next app",
+ title: "سانیهوم | فروشگاه لوازم خانگی",
+ description: "فروشگاه آنلاین لوازم خانگی — یخچال، لباسشویی، تلویزیون و بیشتر",
};
export default function RootLayout({ children }: LayoutProps<"/">) {
return (
{children}
diff --git a/src/app/page.tsx b/src/app/page.tsx
index c887311..3fef222 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -1,69 +1,35 @@
-import Image from "next/image";
+import { TopBar } from "@/components/home/TopBar";
+import { Header } from "@/components/home/Header";
+import { FeatureBar } from "@/components/home/FeatureBar";
+import { HeroSlider } from "@/components/home/HeroSlider";
+import { FeaturedCategories } from "@/components/home/FeaturedCategories";
+import { SpecialSaleCarousel } from "@/components/home/SpecialSaleCarousel";
+import { TwoBanners } from "@/components/home/TwoBanners";
+import { TopSellingCarousel } from "@/components/home/TopSellingCarousel";
+import { ThreeBanners } from "@/components/home/ThreeBanners";
+import { SamsungCarousel } from "@/components/home/SamsungCarousel";
+import { AboutSanihome } from "@/components/home/AboutSanihome";
+import { BlogCarousel } from "@/components/home/BlogCarousel";
+import { Footer } from "@/components/home/Footer";
export default function Home() {
return (
-
-
-
-
-
- To get started, edit the{" "}
-
- page.tsx
- {" "}
- file.
-
-
- Looking for a starting point or more instructions? Head over to{" "}
-
- Templates
- {" "}
- or the{" "}
-
- Learning
- {" "}
- center.
-
-
-
+ <>
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+ >
);
}
diff --git a/src/components/home/AboutSanihome.tsx b/src/components/home/AboutSanihome.tsx
new file mode 100644
index 0000000..5a88011
--- /dev/null
+++ b/src/components/home/AboutSanihome.tsx
@@ -0,0 +1,56 @@
+import { Placeholder } from "@/components/ui/Placeholder";
+
+export function AboutSanihome() {
+ return (
+
+
+
+
+
+
+ درباره سانیهوم
+
+
+ About Sanihome
+
+
+
+ سانیهوم از سال ۱۳۹۰ به عنوان یکی از معتبرترین فروشگاههای آنلاین لوازم
+ خانگی در ایران فعالیت میکند. ما با ارائه محصولات اصل از برندهای
+ معتبر جهانی، گارانتی رسمی و خدمات پس از فروش، تجربهای مطمئن برای
+ خرید لوازم خانگی فراهم کردهایم.
+
+
+ تیم متخصص ما آماده مشاوره رایگان، ارسال سریع به سراسر کشور و
+ نصب حرفهای در محل شماست.
+
+
+ {[
+ { value: "+15", label: "سال تجربه" },
+ { value: "+50K", label: "مشتری راضی" },
+ { value: "+200", label: "برند معتبر" },
+ ].map((stat) => (
+
+
+ {stat.value}
+
+
{stat.label}
+
+ ))}
+
+
+
+
+
+
+ );
+}
diff --git a/src/components/home/BlogCarousel.tsx b/src/components/home/BlogCarousel.tsx
new file mode 100644
index 0000000..18e2a73
--- /dev/null
+++ b/src/components/home/BlogCarousel.tsx
@@ -0,0 +1,52 @@
+import { Placeholder } from "@/components/ui/Placeholder";
+import { SectionTitle } from "@/components/ui/SectionTitle";
+import { Carousel } from "@/components/ui/Carousel";
+import { blogPosts } from "@/data/sample";
+
+export function BlogCarousel() {
+ return (
+
+
+
+
+ {blogPosts.map((post) => (
+
+
+
+
+ {post.date}
+ •
+ {post.readTime} مطالعه
+
+
+ {post.title}
+
+
+ {post.excerpt}
+
+
+ ادامه مطلب ←
+
+
+
+ ))}
+
+
+
+ );
+}
diff --git a/src/components/home/FeatureBar.tsx b/src/components/home/FeatureBar.tsx
new file mode 100644
index 0000000..08148e9
--- /dev/null
+++ b/src/components/home/FeatureBar.tsx
@@ -0,0 +1,125 @@
+function TruckIcon() {
+ return (
+
+
+
+
+
+ );
+}
+
+function ShieldIcon() {
+ return (
+
+
+
+
+ );
+}
+
+function ReturnIcon() {
+ return (
+
+
+
+
+ );
+}
+
+function ReviewIcon() {
+ return (
+
+
+
+
+ );
+}
+
+const features = [
+ {
+ fa: "ارسال رایگان بالاتر از ۵ میلیون تومان",
+ en: "Free Shipping Over 50M",
+ Icon: TruckIcon,
+ },
+ {
+ fa: "ضمانت اصالت کالا",
+ en: "Authenticity Guarantee",
+ Icon: ShieldIcon,
+ },
+ {
+ fa: "امکان مرجوعی کالا",
+ en: "Easy Returns",
+ Icon: ReturnIcon,
+ },
+ {
+ fa: "بررسیهای تخصصی کالا",
+ en: "Expert Reviews",
+ Icon: ReviewIcon,
+ },
+];
+
+export function FeatureBar() {
+ return (
+
+
+
+ {features.map(({ fa, en, Icon }) => (
+
+ ))}
+
+
+
+ );
+}
diff --git a/src/components/home/FeaturedCategories.tsx b/src/components/home/FeaturedCategories.tsx
new file mode 100644
index 0000000..61c21c8
--- /dev/null
+++ b/src/components/home/FeaturedCategories.tsx
@@ -0,0 +1,38 @@
+import { Placeholder } from "@/components/ui/Placeholder";
+import { SectionTitle } from "@/components/ui/SectionTitle";
+import { categories } from "@/data/sample";
+
+export function FeaturedCategories() {
+ return (
+
+ );
+}
diff --git a/src/components/home/Footer.tsx b/src/components/home/Footer.tsx
new file mode 100644
index 0000000..131bd76
--- /dev/null
+++ b/src/components/home/Footer.tsx
@@ -0,0 +1,81 @@
+export function Footer() {
+ return (
+
+
+
+
+
+
+ فروشگاه آنلاین لوازم خانگی با بیش از ۱۵ سال سابقه. محصولات اصل،
+ گارانتی معتبر، ارسال سریع.
+
+
+
+
+
دسترسی سریع
+
+ {["درباره ما", "تماس با ما", "سوالات متداول", "قوانین و مقررات", "پیگیری سفارش"].map(
+ (link) => (
+
+
+ {link}
+
+
+ ),
+ )}
+
+
+
+
+
دستهبندیها
+
+ {["یخچال و فریزر", "ماشین لباسشویی", "تلویزیون", "جاروبرقی", "لوازم آشپزخانه"].map(
+ (link) => (
+
+
+ {link}
+
+
+ ),
+ )}
+
+
+
+
+
تماس با ما
+
+ تهران، خیابان ولیعصر
+ تلفن: ۰۲۱-۸۸۰۰۱۲۳۴
+ ایمیل: info@sanihome.ir
+
+
+ {["IG", "TG", "WA"].map((social) => (
+
+ {social}
+
+ ))}
+
+
+
+
+
+
© ۱۴۰۵ سانیهوم — تمامی حقوق محفوظ است.
+
+ Designed for Sanihome
+
+
+
+
+ );
+}
diff --git a/src/components/home/Header.tsx b/src/components/home/Header.tsx
new file mode 100644
index 0000000..05575c1
--- /dev/null
+++ b/src/components/home/Header.tsx
@@ -0,0 +1,187 @@
+"use client";
+
+import { useEffect, useRef, useState } from "react";
+import { categories } from "@/data/sample";
+
+const navLinks = [
+ { label: "فروش ویژه", href: "#" },
+ { label: "درباره ما", href: "#" },
+ { label: "سوالات متداول", href: "#" },
+ { label: "تماس با ما", href: "#" },
+];
+
+const megaColumns = [
+ {
+ title: "سرمایش و گرمایش",
+ en: "Cooling & Heating",
+ items: ["یخچال و فریزر", "کولر گازی", "آبگرمکن", "بخاری"],
+ },
+ {
+ title: "شستشو",
+ en: "Laundry & Care",
+ items: ["ماشین لباسشویی", "ماشین ظرفشویی", "خشککن", "اتو بخار"],
+ },
+ {
+ title: "صوتی و تصویری",
+ en: "AV & Display",
+ items: ["تلویزیون", "ساندبار", "سینمای خانگی", "پروژکتور"],
+ },
+ {
+ title: "آشپزخانه",
+ en: "Kitchen",
+ items: ["مایکروویو", "جاروبرقی", "هود", "اجاق گاز"],
+ },
+];
+
+export function Header() {
+ const [menuOpen, setMenuOpen] = useState(false);
+ const menuRef = useRef(null);
+
+ useEffect(() => {
+ const onClickOutside = (event: MouseEvent) => {
+ if (menuRef.current && !menuRef.current.contains(event.target as Node)) {
+ setMenuOpen(false);
+ }
+ };
+ document.addEventListener("mousedown", onClickOutside);
+ return () => document.removeEventListener("mousedown", onClickOutside);
+ }, []);
+
+ return (
+
+
+
+
+
+ S
+
+
+
+ SANI
+ HOME
+
+
فروشگاه لوازم خانگی
+
+
+
+
+
+
+
+ 👤
+ ورود
+
+
+ 🛒
+ سبد خرید
+
+ ۲
+
+
+
+
+
+
+ setMenuOpen(true)}
+ onMouseLeave={() => setMenuOpen(false)}
+ >
+
setMenuOpen((open) => !open)}
+ aria-expanded={menuOpen}
+ aria-haspopup="true"
+ className="flex shrink-0 items-center gap-2 rounded-lg bg-red px-4 py-2 font-medium text-white transition-colors hover:bg-red-dark"
+ >
+ ☰
+ دستهبندیها
+
+
+ {menuOpen && (
+
+
+
+
+ {megaColumns.map((column) => (
+
+
{column.title}
+
+ {column.en}
+
+
+ {column.items.map((item) => (
+
+
+ {item}
+
+
+ ))}
+
+
+ ))}
+
+
+
+
+ )}
+
+
+ {navLinks.map((link) => (
+
+ {link.label}
+
+ ))}
+
+
+
+ );
+}
diff --git a/src/components/home/HeroSlider.tsx b/src/components/home/HeroSlider.tsx
new file mode 100644
index 0000000..ff38be5
--- /dev/null
+++ b/src/components/home/HeroSlider.tsx
@@ -0,0 +1,84 @@
+"use client";
+
+import { useState } from "react";
+import { Placeholder } from "@/components/ui/Placeholder";
+import { sliderSlides } from "@/data/sample";
+
+export function HeroSlider() {
+ const [active, setActive] = useState(1);
+
+ const positions = [
+ { offset: -1, scale: "scale-[0.92]", opacity: "opacity-55", z: "z-10" },
+ { offset: 0, scale: "scale-100", opacity: "opacity-100", z: "z-20" },
+ { offset: 1, scale: "scale-[0.92]", opacity: "opacity-55", z: "z-10" },
+ ];
+
+ return (
+
+
+
+ {positions.map(({ offset, scale, opacity, z }) => {
+ const isCenter = offset === 0;
+
+ return (
+
+ );
+ })}
+
+
+
+
+ setActive((prev) => (prev - 1 + sliderSlides.length) % sliderSlides.length)
+ }
+ className="flex h-9 w-9 items-center justify-center rounded-full border border-border text-red transition-colors hover:border-red hover:bg-red-light"
+ aria-label="اسلاید قبلی"
+ >
+ →
+
+
+ {sliderSlides.map((slide, i) => (
+ setActive(i)}
+ aria-label={`اسلاید ${i + 1}`}
+ className={`h-2 rounded-full transition-all ${
+ i === active ? "w-8 bg-red" : "w-2 bg-red-muted/50"
+ }`}
+ />
+ ))}
+
+
setActive((prev) => (prev + 1) % sliderSlides.length)}
+ className="flex h-9 w-9 items-center justify-center rounded-full border border-border text-red transition-colors hover:border-red hover:bg-red-light"
+ aria-label="اسلاید بعدی"
+ >
+ ←
+
+
+
+
+ );
+}
diff --git a/src/components/home/SamsungCarousel.tsx b/src/components/home/SamsungCarousel.tsx
new file mode 100644
index 0000000..0d0a170
--- /dev/null
+++ b/src/components/home/SamsungCarousel.tsx
@@ -0,0 +1,29 @@
+import { Carousel } from "@/components/ui/Carousel";
+import { ProductCard } from "@/components/ui/ProductCard";
+import { SectionTitle } from "@/components/ui/SectionTitle";
+import { samsungProducts } from "@/data/sample";
+
+export function SamsungCarousel() {
+ return (
+
+
+
+
+ {samsungProducts.map((product) => (
+
+ ))}
+
+
+
+ );
+}
diff --git a/src/components/home/SpecialSaleCarousel.tsx b/src/components/home/SpecialSaleCarousel.tsx
new file mode 100644
index 0000000..4273aa9
--- /dev/null
+++ b/src/components/home/SpecialSaleCarousel.tsx
@@ -0,0 +1,48 @@
+import { Carousel } from "@/components/ui/Carousel";
+import { Placeholder } from "@/components/ui/Placeholder";
+import { ProductCard } from "@/components/ui/ProductCard";
+import { SectionTitle } from "@/components/ui/SectionTitle";
+import { specialSaleProducts } from "@/data/sample";
+
+function SpecialSaleBanner() {
+ return (
+
+
+
+ );
+}
+
+export function SpecialSaleCarousel() {
+ return (
+
+
+
+
+
+ {specialSaleProducts.map((product) => (
+
+ ))}
+
+
+
+ );
+}
diff --git a/src/components/home/ThreeBanners.tsx b/src/components/home/ThreeBanners.tsx
new file mode 100644
index 0000000..36df818
--- /dev/null
+++ b/src/components/home/ThreeBanners.tsx
@@ -0,0 +1,36 @@
+import { Placeholder } from "@/components/ui/Placeholder";
+
+const banners = [
+ { title: "ماشین لباسشویی", subtitle: "از ۲۸ میلیون", label: "420×160" },
+ { title: "جاروبرقی", subtitle: "ارسال فوری", label: "420×160" },
+ { title: "لوازم آشپزخانه", subtitle: "تا ۲۰٪ تخفیف", label: "420×160" },
+];
+
+export function ThreeBanners() {
+ return (
+
+ );
+}
diff --git a/src/components/home/TopBar.tsx b/src/components/home/TopBar.tsx
new file mode 100644
index 0000000..2fcb0d4
--- /dev/null
+++ b/src/components/home/TopBar.tsx
@@ -0,0 +1,14 @@
+export function TopBar() {
+ return (
+
+
+
ارسال رایگان برای سفارشهای بالای ۵ میلیون تومان
+
+ پشتیبانی: ۰۲۱-۸۸۰۰۱۲۳۴
+ |
+ شنبه تا پنجشنبه ۹ تا ۱۸
+
+
+
+ );
+}
diff --git a/src/components/home/TopSellingCarousel.tsx b/src/components/home/TopSellingCarousel.tsx
new file mode 100644
index 0000000..4164707
--- /dev/null
+++ b/src/components/home/TopSellingCarousel.tsx
@@ -0,0 +1,28 @@
+import { Carousel } from "@/components/ui/Carousel";
+import { ProductCard } from "@/components/ui/ProductCard";
+import { SectionTitle } from "@/components/ui/SectionTitle";
+import { topSellingProducts } from "@/data/sample";
+
+export function TopSellingCarousel() {
+ return (
+
+
+
+
+ {topSellingProducts.map((product) => (
+
+ ))}
+
+
+
+ );
+}
diff --git a/src/components/home/TwoBanners.tsx b/src/components/home/TwoBanners.tsx
new file mode 100644
index 0000000..3105975
--- /dev/null
+++ b/src/components/home/TwoBanners.tsx
@@ -0,0 +1,38 @@
+import { Placeholder } from "@/components/ui/Placeholder";
+
+export function TwoBanners() {
+ return (
+
+ );
+}
diff --git a/src/components/ui/Carousel.tsx b/src/components/ui/Carousel.tsx
new file mode 100644
index 0000000..317f351
--- /dev/null
+++ b/src/components/ui/Carousel.tsx
@@ -0,0 +1,79 @@
+"use client";
+
+import { useRef } from "react";
+
+type CarouselProps = {
+ children: React.ReactNode;
+ ariaLabel: string;
+};
+
+function ChevronLeftIcon() {
+ return (
+
+
+
+ );
+}
+
+function ChevronRightIcon() {
+ return (
+
+
+
+ );
+}
+
+export function Carousel({ children, ariaLabel }: CarouselProps) {
+ const trackRef = useRef(null);
+
+ const scroll = (direction: "prev" | "next") => {
+ const track = trackRef.current;
+ if (!track) return;
+ const amount = direction === "next" ? -280 : 280;
+ track.scrollBy({ left: amount, behavior: "smooth" });
+ };
+
+ const btnClass =
+ "absolute top-1/2 z-10 flex h-10 w-10 -translate-y-1/2 items-center justify-center rounded-full border border-white/40 bg-white/40 text-red shadow-sm backdrop-blur-md transition-colors hover:border-red/40 hover:bg-white/60 hover:text-red-dark";
+
+ return (
+
+
scroll("prev")}
+ aria-label="قبلی"
+ className={`${btnClass} right-1`}
+ >
+
+
+
scroll("next")}
+ aria-label="بعدی"
+ className={`${btnClass} left-1`}
+ >
+
+
+
+ {children}
+
+
+ );
+}
diff --git a/src/components/ui/Placeholder.tsx b/src/components/ui/Placeholder.tsx
new file mode 100644
index 0000000..a6b3b7c
--- /dev/null
+++ b/src/components/ui/Placeholder.tsx
@@ -0,0 +1,26 @@
+type PlaceholderProps = {
+ width: string;
+ height?: string;
+ label?: string;
+ className?: string;
+};
+
+export function Placeholder({
+ width,
+ height,
+ label,
+ className = "",
+}: PlaceholderProps) {
+ return (
+
+
+
+ {label ?? `${width} × ${height ?? ""}`}
+
+
+ );
+}
diff --git a/src/components/ui/ProductCard.tsx b/src/components/ui/ProductCard.tsx
new file mode 100644
index 0000000..1e4e04c
--- /dev/null
+++ b/src/components/ui/ProductCard.tsx
@@ -0,0 +1,63 @@
+import { Placeholder } from "./Placeholder";
+import { formatPrice } from "@/data/sample";
+
+type ProductCardProps = {
+ name: string;
+ brand: string;
+ price: number;
+ oldPrice?: number;
+ discount?: number;
+ variant?: "sale" | "default" | "brand";
+};
+
+export function ProductCard({
+ name,
+ brand,
+ price,
+ oldPrice,
+ discount,
+ variant = "default",
+}: ProductCardProps) {
+ return (
+
+
+
+ {discount && (
+
+ {discount}٪
+
+ )}
+ {variant === "brand" && (
+
+ {brand}
+
+ )}
+
+
+
+ {brand}
+
+
+ {name}
+
+
+
+ {formatPrice(price)}
+ تومان
+
+ {oldPrice && (
+
+ {formatPrice(oldPrice)}
+
+ )}
+
+
+ افزودن به سبد
+
+
+
+ );
+}
diff --git a/src/components/ui/SectionTitle.tsx b/src/components/ui/SectionTitle.tsx
new file mode 100644
index 0000000..12047d2
--- /dev/null
+++ b/src/components/ui/SectionTitle.tsx
@@ -0,0 +1,36 @@
+type SectionTitleProps = {
+ title: string;
+ enTitle: string;
+ subtitle?: string;
+ action?: string;
+};
+
+export function SectionTitle({ title, enTitle, subtitle, action }: SectionTitleProps) {
+ return (
+
+
+
+
{title}
+
+ {enTitle}
+
+
+ {subtitle && (
+
{subtitle}
+ )}
+
+ {action && (
+
+ {action} ←
+
+ )}
+
+ );
+}
diff --git a/src/data/sample.ts b/src/data/sample.ts
new file mode 100644
index 0000000..a4f9fde
--- /dev/null
+++ b/src/data/sample.ts
@@ -0,0 +1,201 @@
+export const categories = [
+ { id: 1, name: "یخچال و فریزر", count: 48 },
+ { id: 2, name: "ماشین لباسشویی", count: 36 },
+ { id: 3, name: "تلویزیون", count: 52 },
+ { id: 4, name: "جاروبرقی", count: 29 },
+ { id: 5, name: "مایکروویو", count: 18 },
+ { id: 6, name: "ظرفشویی", count: 22 },
+ { id: 7, name: "کولر و گرمایش", count: 31 },
+ { id: 8, name: "لوازم آشپزخانه", count: 64 },
+];
+
+export const specialSaleProducts = [
+ {
+ id: 1,
+ name: "یخچال فریزر ساید بای ساید سامسونگ",
+ brand: "Samsung",
+ price: 89500000,
+ oldPrice: 102000000,
+ discount: 12,
+ },
+ {
+ id: 2,
+ name: "ماشین لباسشویی ۹ کیلویی الجی",
+ brand: "LG",
+ price: 42800000,
+ oldPrice: 48500000,
+ discount: 11,
+ },
+ {
+ id: 3,
+ name: "تلویزیون ۵۵ اینچ QLED سامسونگ",
+ brand: "Samsung",
+ price: 56200000,
+ oldPrice: 62000000,
+ discount: 9,
+ },
+ {
+ id: 4,
+ name: "جاروبرقی رباتیک شیائومی",
+ brand: "Xiaomi",
+ price: 18900000,
+ oldPrice: 23500000,
+ discount: 19,
+ },
+ {
+ id: 5,
+ name: "مایکروویو ۳۰ لیتری بوش",
+ brand: "Bosch",
+ price: 12400000,
+ oldPrice: 14800000,
+ discount: 16,
+ },
+ {
+ id: 6,
+ name: "ظرفشویی ۱۴ نفره بوش",
+ brand: "Bosch",
+ price: 35600000,
+ oldPrice: 39900000,
+ discount: 10,
+ },
+];
+
+export const topSellingProducts = [
+ {
+ id: 7,
+ name: "یخچال دوقلو الجی",
+ brand: "LG",
+ price: 67800000,
+ sold: 124,
+ },
+ {
+ id: 8,
+ name: "تلویزیون ۶۵ اینچ OLED الجی",
+ brand: "LG",
+ price: 98500000,
+ sold: 89,
+ },
+ {
+ id: 9,
+ name: "ماشین لباسشویی ۸ کیلویی سامسونگ",
+ brand: "Samsung",
+ price: 38900000,
+ sold: 156,
+ },
+ {
+ id: 10,
+ name: "کولر گازی ۲۴ هزار اینورتر",
+ brand: "Gree",
+ price: 24500000,
+ sold: 203,
+ },
+ {
+ id: 11,
+ name: "اجاق گاز رومیزی بوش",
+ brand: "Bosch",
+ price: 16800000,
+ sold: 67,
+ },
+ {
+ id: 12,
+ name: "جاروبرقی سایکلون سامسونگ",
+ brand: "Samsung",
+ price: 8900000,
+ sold: 178,
+ },
+];
+
+export const samsungProducts = [
+ {
+ id: 13,
+ name: "یخچال Bespoke سامسونگ",
+ brand: "Samsung",
+ price: 112000000,
+ },
+ {
+ id: 14,
+ name: "ماشین لباسشویی AI EcoBubble",
+ brand: "Samsung",
+ price: 45600000,
+ },
+ {
+ id: 15,
+ name: "تلویزیون Neo QLED 8K",
+ brand: "Samsung",
+ price: 185000000,
+ },
+ {
+ id: 16,
+ name: "جاروبرقی Jet ۹۰",
+ brand: "Samsung",
+ price: 21500000,
+ },
+ {
+ id: 17,
+ name: "مایکروویو Grill سامسونگ",
+ brand: "Samsung",
+ price: 13800000,
+ },
+ {
+ id: 18,
+ name: "کولر گازی WindFree",
+ brand: "Samsung",
+ price: 32800000,
+ },
+];
+
+export const blogPosts = [
+ {
+ id: 1,
+ title: "راهنمای خرید یخچال مناسب برای خانواده",
+ excerpt: "نکات مهم برای انتخاب یخچال با توجه به فضای آشپزخانه و تعداد اعضای خانواده.",
+ date: "۱۲ مرداد ۱۴۰۵",
+ readTime: "۵ دقیقه",
+ },
+ {
+ id: 2,
+ title: "مقایسه تلویزیون QLED و OLED",
+ excerpt: "تفاوتهای فنی و کاربردی دو تکنولوژی محبوب نمایشگر در سال ۱۴۰۵.",
+ date: "۸ مرداد ۱۴۰۵",
+ readTime: "۷ دقیقه",
+ },
+ {
+ id: 3,
+ title: "چگونه مصرف برق لوازم خانگی را کاهش دهیم؟",
+ excerpt: "راهکارهای عملی برای صرفهجویی در قبض برق با استفاده هوشمند از لوازم برقی.",
+ date: "۳ مرداد ۱۴۰۵",
+ readTime: "۴ دقیقه",
+ },
+ {
+ id: 4,
+ title: "معرفی جدیدترین محصولات سامسونگ ۲۰۲۶",
+ excerpt: "نگاهی به سری Bespoke و Neo QLED در نمایشگاه لوازم خانگی امسال.",
+ date: "۲۸ تیر ۱۴۰۵",
+ readTime: "۶ دقیقه",
+ },
+];
+
+export const sliderSlides = [
+ {
+ id: 1,
+ title: "جشنواره تابستانه لوازم خانگی",
+ subtitle: "تا ۳۰٪ تخفیف روی برندهای منتخب",
+ cta: "مشاهده پیشنهادها",
+ },
+ {
+ id: 2,
+ title: "سری جدید Samsung Bespoke",
+ subtitle: "طراحی هوشمند برای آشپزخانه مدرن",
+ cta: "کاوش مجموعه",
+ },
+ {
+ id: 3,
+ title: "ارسال رایگان به سراسر کشور",
+ subtitle: "برای سفارشهای بالای ۵ میلیون تومان",
+ cta: "خرید کنید",
+ },
+];
+
+export function formatPrice(price: number): string {
+ return new Intl.NumberFormat("fa-IR").format(price);
+}