From 149b77f734fa97c91c31ed3c3b618a1293033157 Mon Sep 17 00:00:00 2001 From: "amirhosein.ashourloo" Date: Wed, 19 Aug 2026 17:54:11 +0330 Subject: [PATCH] create --- .claude/launch.json | 12 ++ connect-backend-prompt.txt | 15 ++ images-slot-prompt.txt | 13 ++ package-lock.json | 22 +- package.json | 3 +- public/fonts/iranyekanwebboldfanum.woff | Bin 0 -> 33581 bytes public/fonts/iranyekanweblightfanum.woff | Bin 0 -> 33941 bytes public/images/about/about.svg | 10 + public/images/banners/banner-1.svg | 10 + public/images/banners/banner-2.svg | 10 + public/images/banners/full-banner.svg | 10 + public/images/blog/post-1.svg | 10 + public/images/blog/post-2.svg | 10 + public/images/blog/post-3.svg | 10 + public/images/blog/post-4.svg | 10 + public/images/categories/baby.svg | 10 + public/images/categories/boys.svg | 10 + public/images/categories/girls.svg | 10 + public/images/categories/outerwear.svg | 10 + public/images/categories/party.svg | 10 + public/images/categories/sets.svg | 10 + public/images/hero/slide-1.svg | 10 + public/images/hero/slide-2.svg | 10 + public/images/hero/slide-3.svg | 10 + public/images/logo.png | Bin 0 -> 8646 bytes public/images/products/product-1.svg | 10 + public/images/products/product-10.svg | 10 + public/images/products/product-11.svg | 10 + public/images/products/product-12.svg | 10 + public/images/products/product-2.svg | 10 + public/images/products/product-3.svg | 10 + public/images/products/product-4.svg | 10 + public/images/products/product-5.svg | 10 + public/images/products/product-6.svg | 10 + public/images/products/product-7.svg | 10 + public/images/products/product-8.svg | 10 + public/images/products/product-9.svg | 10 + public/images/special-sale/banner.svg | 10 + public/images/special-sale/product-1.svg | 10 + public/images/special-sale/product-2.svg | 10 + public/images/special-sale/product-3.svg | 10 + public/images/special-sale/product-4.svg | 10 + public/images/special-sale/product-5.svg | 10 + public/images/special-sale/product-6.svg | 10 + public/images/special-sale/product-7.svg | 10 + public/images/special-sale/product-8.svg | 10 + scripts/gen-placeholders.mjs | 85 ++++++++ src/app/blog/[slug]/page.tsx | 59 ++++++ src/app/blog/page.tsx | 86 ++++++++ src/app/fonts.ts | 21 ++ src/app/globals.css | 125 +++++++++++- src/app/layout.tsx | 37 ++-- src/app/page.tsx | 111 +++++------ src/app/products/[slug]/page.tsx | 83 ++++++++ src/app/products/page.tsx | 96 +++++++++ src/components/AboutUs.tsx | 84 ++++++++ src/components/BlogCarousel.tsx | 61 ++++++ src/components/Categories.tsx | 57 ++++++ src/components/Footer.tsx | 109 ++++++++++ src/components/FullBanner.tsx | 24 +++ src/components/Header.tsx | 244 +++++++++++++++++++++++ src/components/HeroSlider.tsx | 66 ++++++ src/components/Logo.tsx | 16 ++ src/components/ProductBuyPanel.tsx | 193 ++++++++++++++++++ src/components/ProductGallery.tsx | 62 ++++++ src/components/ProductInfoTabs.tsx | 104 ++++++++++ src/components/SearchBox.tsx | 120 +++++++++++ src/components/SpecialSaleCarousel.tsx | 83 ++++++++ src/components/TopSellingCarousel.tsx | 60 ++++++ src/components/TwoBanners.tsx | 42 ++++ src/components/icons.tsx | 173 ++++++++++++++++ src/components/ui/Pagination.tsx | 64 ++++++ src/components/ui/ProductCard.tsx | 41 ++++ src/components/ui/SectionHeading.tsx | 23 +++ src/data/site.ts | 14 ++ src/lib/api.ts | 117 +++++++++++ src/lib/categoryTree.ts | 30 +++ src/lib/config.ts | 3 + src/lib/format.ts | 3 + src/lib/types.ts | 166 +++++++++++++++ 80 files changed, 3015 insertions(+), 92 deletions(-) create mode 100644 .claude/launch.json create mode 100644 connect-backend-prompt.txt create mode 100644 images-slot-prompt.txt create mode 100644 public/fonts/iranyekanwebboldfanum.woff create mode 100644 public/fonts/iranyekanweblightfanum.woff create mode 100644 public/images/about/about.svg create mode 100644 public/images/banners/banner-1.svg create mode 100644 public/images/banners/banner-2.svg create mode 100644 public/images/banners/full-banner.svg create mode 100644 public/images/blog/post-1.svg create mode 100644 public/images/blog/post-2.svg create mode 100644 public/images/blog/post-3.svg create mode 100644 public/images/blog/post-4.svg create mode 100644 public/images/categories/baby.svg create mode 100644 public/images/categories/boys.svg create mode 100644 public/images/categories/girls.svg create mode 100644 public/images/categories/outerwear.svg create mode 100644 public/images/categories/party.svg create mode 100644 public/images/categories/sets.svg create mode 100644 public/images/hero/slide-1.svg create mode 100644 public/images/hero/slide-2.svg create mode 100644 public/images/hero/slide-3.svg create mode 100644 public/images/logo.png create mode 100644 public/images/products/product-1.svg create mode 100644 public/images/products/product-10.svg create mode 100644 public/images/products/product-11.svg create mode 100644 public/images/products/product-12.svg create mode 100644 public/images/products/product-2.svg create mode 100644 public/images/products/product-3.svg create mode 100644 public/images/products/product-4.svg create mode 100644 public/images/products/product-5.svg create mode 100644 public/images/products/product-6.svg create mode 100644 public/images/products/product-7.svg create mode 100644 public/images/products/product-8.svg create mode 100644 public/images/products/product-9.svg create mode 100644 public/images/special-sale/banner.svg create mode 100644 public/images/special-sale/product-1.svg create mode 100644 public/images/special-sale/product-2.svg create mode 100644 public/images/special-sale/product-3.svg create mode 100644 public/images/special-sale/product-4.svg create mode 100644 public/images/special-sale/product-5.svg create mode 100644 public/images/special-sale/product-6.svg create mode 100644 public/images/special-sale/product-7.svg create mode 100644 public/images/special-sale/product-8.svg create mode 100644 scripts/gen-placeholders.mjs create mode 100644 src/app/blog/[slug]/page.tsx create mode 100644 src/app/blog/page.tsx create mode 100644 src/app/fonts.ts create mode 100644 src/app/products/[slug]/page.tsx create mode 100644 src/app/products/page.tsx create mode 100644 src/components/AboutUs.tsx create mode 100644 src/components/BlogCarousel.tsx create mode 100644 src/components/Categories.tsx create mode 100644 src/components/Footer.tsx create mode 100644 src/components/FullBanner.tsx create mode 100644 src/components/Header.tsx create mode 100644 src/components/HeroSlider.tsx create mode 100644 src/components/Logo.tsx create mode 100644 src/components/ProductBuyPanel.tsx create mode 100644 src/components/ProductGallery.tsx create mode 100644 src/components/ProductInfoTabs.tsx create mode 100644 src/components/SearchBox.tsx create mode 100644 src/components/SpecialSaleCarousel.tsx create mode 100644 src/components/TopSellingCarousel.tsx create mode 100644 src/components/TwoBanners.tsx create mode 100644 src/components/icons.tsx create mode 100644 src/components/ui/Pagination.tsx create mode 100644 src/components/ui/ProductCard.tsx create mode 100644 src/components/ui/SectionHeading.tsx create mode 100644 src/data/site.ts create mode 100644 src/lib/api.ts create mode 100644 src/lib/categoryTree.ts create mode 100644 src/lib/config.ts create mode 100644 src/lib/format.ts create mode 100644 src/lib/types.ts diff --git a/.claude/launch.json b/.claude/launch.json new file mode 100644 index 0000000..10fb0fc --- /dev/null +++ b/.claude/launch.json @@ -0,0 +1,12 @@ +{ + "version": "0.0.1", + "configurations": [ + { + "name": "simode-dev", + "runtimeExecutable": "npm", + "runtimeArgs": ["run", "dev"], + "port": 3000, + "autoPort": true + } + ] +} diff --git a/connect-backend-prompt.txt b/connect-backend-prompt.txt new file mode 100644 index 0000000..e9d0997 --- /dev/null +++ b/connect-backend-prompt.txt @@ -0,0 +1,15 @@ +Domain: simode.shop +Documentation for backend is:https://api.meshkee.com/docs/website + + +Login or user icon should go to customer.simode.shop + +Create product page and details >> connect to store items +Create blog page and details >> connect to blog + +Product Menu should be a mega menu with level 2 and 3 of categories - skip level 1 + +Search input should be instant search - activate when type more than 2 char + +First carousel >> special-discount +Second carousel >> top-selling diff --git a/images-slot-prompt.txt b/images-slot-prompt.txt new file mode 100644 index 0000000..ea51cf6 --- /dev/null +++ b/images-slot-prompt.txt @@ -0,0 +1,13 @@ +Wire this page to simode.shop static-image slots. + +Read http://meshkee.com/docs/website (static-images). Env is already set. + +Fetch slots, match by key: +- slider > duplicatable +- two-banner-row > two slot +- one-banner-row → one slot +- aboutus-row → one slot + +Use slot.images (all of them if kind=list, first if kind=single). +url → . linkUrl → wrap in . Empty or fail → keep current placeholder. +Use slot.aspectRatio from the API. Do not invent upload APIs. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 69cf187..349dde5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,8 @@ "dependencies": { "next": "16.3.1", "react": "19.2.8", - "react-dom": "19.2.8" + "react-dom": "19.2.8", + "swiper": "^14.1.0" }, "devDependencies": { "@tailwindcss/postcss": "^4", @@ -6258,6 +6259,25 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/swiper": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-14.1.0.tgz", + "integrity": "sha512-ppit/AqmGvThKlXy4I1/9N/gEyb9s/BDHWciWNeIxbfteFKUhPQXrYuOMKszomXKd9WiLd+/0vKdPHW+0N0mhA==", + "funding": [ + { + "type": "custom", + "url": "https://sponsors.nolimits4web.com" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nolimits4web" + } + ], + "license": "MIT", + "engines": { + "node": ">= 4.7.0" + } + }, "node_modules/tailwindcss": { "version": "4.3.3", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.3.3.tgz", diff --git a/package.json b/package.json index bebd39b..0a002e7 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ "dependencies": { "next": "16.3.1", "react": "19.2.8", - "react-dom": "19.2.8" + "react-dom": "19.2.8", + "swiper": "^14.1.0" }, "devDependencies": { "@tailwindcss/postcss": "^4", diff --git a/public/fonts/iranyekanwebboldfanum.woff b/public/fonts/iranyekanwebboldfanum.woff new file mode 100644 index 0000000000000000000000000000000000000000..07f9756fbacf17967305b010b61cd7df77834f7b GIT binary patch literal 33581 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 literal 0 HcmV?d00001 diff --git a/public/fonts/iranyekanweblightfanum.woff b/public/fonts/iranyekanweblightfanum.woff new file mode 100644 index 0000000000000000000000000000000000000000..9e6d42cd181425697fc545b772467d49e266b35d GIT binary patch literal 33941 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 WP(%R$Mnek#1prXT)e>9)0002(I#c-o literal 0 HcmV?d00001 diff --git a/public/images/about/about.svg b/public/images/about/about.svg new file mode 100644 index 0000000..46803a4 --- /dev/null +++ b/public/images/about/about.svg @@ -0,0 +1,10 @@ + + + + + + + + + ABOUT US · 720×640 + \ No newline at end of file diff --git a/public/images/banners/banner-1.svg b/public/images/banners/banner-1.svg new file mode 100644 index 0000000..af4cd0e --- /dev/null +++ b/public/images/banners/banner-1.svg @@ -0,0 +1,10 @@ + + + + + + + + + BANNER · 770×360 + \ No newline at end of file diff --git a/public/images/banners/banner-2.svg b/public/images/banners/banner-2.svg new file mode 100644 index 0000000..f814f5b --- /dev/null +++ b/public/images/banners/banner-2.svg @@ -0,0 +1,10 @@ + + + + + + + + + BANNER · 770×360 + \ No newline at end of file diff --git a/public/images/banners/full-banner.svg b/public/images/banners/full-banner.svg new file mode 100644 index 0000000..5cea160 --- /dev/null +++ b/public/images/banners/full-banner.svg @@ -0,0 +1,10 @@ + + + + + + + + + FULL BANNER · 1600×420 + \ No newline at end of file diff --git a/public/images/blog/post-1.svg b/public/images/blog/post-1.svg new file mode 100644 index 0000000..71fd354 --- /dev/null +++ b/public/images/blog/post-1.svg @@ -0,0 +1,10 @@ + + + + + + + + + BLOG · 520×380 + \ No newline at end of file diff --git a/public/images/blog/post-2.svg b/public/images/blog/post-2.svg new file mode 100644 index 0000000..2c315d5 --- /dev/null +++ b/public/images/blog/post-2.svg @@ -0,0 +1,10 @@ + + + + + + + + + BLOG · 520×380 + \ No newline at end of file diff --git a/public/images/blog/post-3.svg b/public/images/blog/post-3.svg new file mode 100644 index 0000000..71fd354 --- /dev/null +++ b/public/images/blog/post-3.svg @@ -0,0 +1,10 @@ + + + + + + + + + BLOG · 520×380 + \ No newline at end of file diff --git a/public/images/blog/post-4.svg b/public/images/blog/post-4.svg new file mode 100644 index 0000000..2c315d5 --- /dev/null +++ b/public/images/blog/post-4.svg @@ -0,0 +1,10 @@ + + + + + + + + + BLOG · 520×380 + \ No newline at end of file diff --git a/public/images/categories/baby.svg b/public/images/categories/baby.svg new file mode 100644 index 0000000..036d825 --- /dev/null +++ b/public/images/categories/baby.svg @@ -0,0 +1,10 @@ + + + + + + + + + CATEGORY · 520×600 + \ No newline at end of file diff --git a/public/images/categories/boys.svg b/public/images/categories/boys.svg new file mode 100644 index 0000000..593a069 --- /dev/null +++ b/public/images/categories/boys.svg @@ -0,0 +1,10 @@ + + + + + + + + + CATEGORY · 520×600 + \ No newline at end of file diff --git a/public/images/categories/girls.svg b/public/images/categories/girls.svg new file mode 100644 index 0000000..036d825 --- /dev/null +++ b/public/images/categories/girls.svg @@ -0,0 +1,10 @@ + + + + + + + + + CATEGORY · 520×600 + \ No newline at end of file diff --git a/public/images/categories/outerwear.svg b/public/images/categories/outerwear.svg new file mode 100644 index 0000000..593a069 --- /dev/null +++ b/public/images/categories/outerwear.svg @@ -0,0 +1,10 @@ + + + + + + + + + CATEGORY · 520×600 + \ No newline at end of file diff --git a/public/images/categories/party.svg b/public/images/categories/party.svg new file mode 100644 index 0000000..593a069 --- /dev/null +++ b/public/images/categories/party.svg @@ -0,0 +1,10 @@ + + + + + + + + + CATEGORY · 520×600 + \ No newline at end of file diff --git a/public/images/categories/sets.svg b/public/images/categories/sets.svg new file mode 100644 index 0000000..036d825 --- /dev/null +++ b/public/images/categories/sets.svg @@ -0,0 +1,10 @@ + + + + + + + + + CATEGORY · 520×600 + \ No newline at end of file diff --git a/public/images/hero/slide-1.svg b/public/images/hero/slide-1.svg new file mode 100644 index 0000000..54c8e05 --- /dev/null +++ b/public/images/hero/slide-1.svg @@ -0,0 +1,10 @@ + + + + + + + + + HERO SLIDE · 1600×560 + \ No newline at end of file diff --git a/public/images/hero/slide-2.svg b/public/images/hero/slide-2.svg new file mode 100644 index 0000000..f791594 --- /dev/null +++ b/public/images/hero/slide-2.svg @@ -0,0 +1,10 @@ + + + + + + + + + HERO SLIDE · 1600×560 + \ No newline at end of file diff --git a/public/images/hero/slide-3.svg b/public/images/hero/slide-3.svg new file mode 100644 index 0000000..54c8e05 --- /dev/null +++ b/public/images/hero/slide-3.svg @@ -0,0 +1,10 @@ + + + + + + + + + HERO SLIDE · 1600×560 + \ No newline at end of file diff --git a/public/images/logo.png b/public/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2d73ff862eaab80ad7e23bad52afd9bd32e2a12c GIT binary patch literal 8646 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 + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-10.svg b/public/images/products/product-10.svg new file mode 100644 index 0000000..f3dc943 --- /dev/null +++ b/public/images/products/product-10.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-11.svg b/public/images/products/product-11.svg new file mode 100644 index 0000000..d2eeac3 --- /dev/null +++ b/public/images/products/product-11.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-12.svg b/public/images/products/product-12.svg new file mode 100644 index 0000000..f3dc943 --- /dev/null +++ b/public/images/products/product-12.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-2.svg b/public/images/products/product-2.svg new file mode 100644 index 0000000..f3dc943 --- /dev/null +++ b/public/images/products/product-2.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-3.svg b/public/images/products/product-3.svg new file mode 100644 index 0000000..d2eeac3 --- /dev/null +++ b/public/images/products/product-3.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-4.svg b/public/images/products/product-4.svg new file mode 100644 index 0000000..f3dc943 --- /dev/null +++ b/public/images/products/product-4.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-5.svg b/public/images/products/product-5.svg new file mode 100644 index 0000000..d2eeac3 --- /dev/null +++ b/public/images/products/product-5.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-6.svg b/public/images/products/product-6.svg new file mode 100644 index 0000000..f3dc943 --- /dev/null +++ b/public/images/products/product-6.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-7.svg b/public/images/products/product-7.svg new file mode 100644 index 0000000..d2eeac3 --- /dev/null +++ b/public/images/products/product-7.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-8.svg b/public/images/products/product-8.svg new file mode 100644 index 0000000..f3dc943 --- /dev/null +++ b/public/images/products/product-8.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/products/product-9.svg b/public/images/products/product-9.svg new file mode 100644 index 0000000..d2eeac3 --- /dev/null +++ b/public/images/products/product-9.svg @@ -0,0 +1,10 @@ + + + + + + + + + PRODUCT · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/banner.svg b/public/images/special-sale/banner.svg new file mode 100644 index 0000000..131d999 --- /dev/null +++ b/public/images/special-sale/banner.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE BANNER · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-1.svg b/public/images/special-sale/product-1.svg new file mode 100644 index 0000000..4900f79 --- /dev/null +++ b/public/images/special-sale/product-1.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-2.svg b/public/images/special-sale/product-2.svg new file mode 100644 index 0000000..746b064 --- /dev/null +++ b/public/images/special-sale/product-2.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-3.svg b/public/images/special-sale/product-3.svg new file mode 100644 index 0000000..4900f79 --- /dev/null +++ b/public/images/special-sale/product-3.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-4.svg b/public/images/special-sale/product-4.svg new file mode 100644 index 0000000..746b064 --- /dev/null +++ b/public/images/special-sale/product-4.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-5.svg b/public/images/special-sale/product-5.svg new file mode 100644 index 0000000..4900f79 --- /dev/null +++ b/public/images/special-sale/product-5.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-6.svg b/public/images/special-sale/product-6.svg new file mode 100644 index 0000000..746b064 --- /dev/null +++ b/public/images/special-sale/product-6.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-7.svg b/public/images/special-sale/product-7.svg new file mode 100644 index 0000000..4900f79 --- /dev/null +++ b/public/images/special-sale/product-7.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/public/images/special-sale/product-8.svg b/public/images/special-sale/product-8.svg new file mode 100644 index 0000000..746b064 --- /dev/null +++ b/public/images/special-sale/product-8.svg @@ -0,0 +1,10 @@ + + + + + + + + + SALE ITEM · 480×620 + \ No newline at end of file diff --git a/scripts/gen-placeholders.mjs b/scripts/gen-placeholders.mjs new file mode 100644 index 0000000..0056c93 --- /dev/null +++ b/scripts/gen-placeholders.mjs @@ -0,0 +1,85 @@ +// Generates flat, neutral placeholder SVG images so every image slot on the +// homepage has a real file on disk that can be swapped later without any +// code changes. Run with: node scripts/gen-placeholders.mjs +import { mkdirSync, writeFileSync } from "node:fs"; +import { dirname, join } from "node:path"; +import { fileURLToPath } from "node:url"; + +const __dirname = dirname(fileURLToPath(import.meta.url)); +const PUBLIC = join(__dirname, "..", "public", "images"); + +// Two flat, muted tones so placeholders alternate subtly instead of being +// one flat wall of gray. +const TONES = ["#EBEDE9", "#E4E7E2"]; + +function icon(cx, cy, s, stroke) { + // Simple flat "image" glyph: rounded frame + mountain + sun dot. + return ` + + + + + `; +} + +function svgPlaceholder({ w, h, label, tone }) { + const s = Math.min(w, h) * 0.22; + const cx = w / 2; + const cy = h / 2 - s * 0.12; + return ` + + ${icon(cx, cy, s, "#B9BEB4")} + ${label} · ${w}×${h} +`; +} + +let toneIndex = 0; +function nextTone() { + const t = TONES[toneIndex % TONES.length]; + toneIndex += 1; + return t; +} + +function write(relPath, w, h, label) { + const full = join(PUBLIC, relPath); + mkdirSync(dirname(full), { recursive: true }); + writeFileSync(full, svgPlaceholder({ w, h, label, tone: nextTone() }), "utf8"); + console.log("wrote", relPath); +} + +// Hero slider — full width slides +for (let i = 1; i <= 3; i++) write(`hero/slide-${i}.svg`, 1600, 560, "HERO SLIDE"); + +// Special sale carousel — first card is a banner image, rest are product shots +write("special-sale/banner.svg", 480, 620, "SALE BANNER"); +for (let i = 1; i <= 8; i++) write(`special-sale/product-${i}.svg`, 480, 620, "SALE ITEM"); + +// Categories +const categories = ["girls", "boys", "baby", "party", "sets", "outerwear"]; +for (const key of categories) write(`categories/${key}.svg`, 520, 600, "CATEGORY"); + +// Two-banner section +write("banners/banner-1.svg", 770, 360, "BANNER"); +write("banners/banner-2.svg", 770, 360, "BANNER"); + +// Single full-width banner +write("banners/full-banner.svg", 1600, 420, "FULL BANNER"); + +// Top selling products carousel +for (let i = 1; i <= 12; i++) write(`products/product-${i}.svg`, 480, 620, "PRODUCT"); + +// About us +write("about/about.svg", 720, 640, "ABOUT US"); + +// Blog carousel +for (let i = 1; i <= 4; i++) write(`blog/post-${i}.svg`, 520, 380, "BLOG"); + +console.log("Done. Placeholder images generated in public/images/"); diff --git a/src/app/blog/[slug]/page.tsx b/src/app/blog/[slug]/page.tsx new file mode 100644 index 0000000..223c840 --- /dev/null +++ b/src/app/blog/[slug]/page.tsx @@ -0,0 +1,59 @@ +import Link from "next/link"; +import { notFound } from "next/navigation"; +import { getBlog } from "@/lib/api"; + +export default async function BlogDetailPage({ + params, +}: { + params: Promise<{ slug: string }>; +}) { + const { slug } = await params; + + let blog; + try { + ({ blog } = await getBlog(slug)); + } catch { + notFound(); + } + + const title = blog.title || blog.nameFa || ""; + const cover = blog.thumbnailUrl || blog.image; + const date = blog.publishedAt || blog.createdAt; + const content = blog.contentHtml || blog.descriptionHtml; + + return ( +
+ + +
+ {date && ( + + {date.slice(0, 10)} + + )} +

{title}

+ + {cover && ( + + )} + + {blog.summary &&

{blog.summary}

} + + {content && ( +
+ )} +
+
+ ); +} diff --git a/src/app/blog/page.tsx b/src/app/blog/page.tsx new file mode 100644 index 0000000..b613268 --- /dev/null +++ b/src/app/blog/page.tsx @@ -0,0 +1,86 @@ +import Link from "next/link"; +import { getBlogs, safe } from "@/lib/api"; +import Pagination from "@/components/ui/Pagination"; + +const PAGE_SIZE = 12; + +export const metadata = { + title: "وبلاگ | کودکانه", +}; + +export default async function BlogPage({ + searchParams, +}: { + searchParams: Promise<{ page?: string }>; +}) { + const params = await searchParams; + const page = Math.max(1, Number(params.page) || 1); + + const result = await safe(getBlogs({ page, pageSize: PAGE_SIZE }), { + items: [], + total: 0, + page, + pageSize: PAGE_SIZE, + }); + + const totalPages = Math.max(1, Math.ceil(result.total / PAGE_SIZE)); + + return ( +
+
+ + Our Blog + +

مقالات وبلاگ

+
+ + {result.items.length === 0 ? ( +

+ هنوز مطلبی در وبلاگ منتشر نشده است. به‌زودی برمی‌گردیم. +

+ ) : ( + <> +
+ {result.items.map((post) => { + const date = post.publishedAt || post.createdAt; + return ( + + +
+ {date && ( + + {date.slice(0, 10)} + + )} +

+ {post.title || post.nameFa} +

+ {post.summary && ( +

+ {post.summary} +

+ )} +
+ + ); + })} +
+ + `/blog${p > 1 ? `?page=${p}` : ""}`} + /> + + )} +
+ ); +} diff --git a/src/app/fonts.ts b/src/app/fonts.ts new file mode 100644 index 0000000..ff32118 --- /dev/null +++ b/src/app/fonts.ts @@ -0,0 +1,21 @@ +import localFont from "next/font/local"; + +// Site-provided IRANYekan files (public/fonts) — light for body copy, bold +// for headings. Both register under one CSS variable so font-weight alone +// picks the right file. +export const iranYekan = localFont({ + src: [ + { + path: "../../public/fonts/iranyekanweblightfanum.woff", + weight: "300", + style: "normal", + }, + { + path: "../../public/fonts/iranyekanwebboldfanum.woff", + weight: "700", + style: "normal", + }, + ], + variable: "--font-fa", + display: "swap", +}); diff --git a/src/app/globals.css b/src/app/globals.css index a2dc41e..99f3014 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -2,25 +2,128 @@ :root { --background: #ffffff; - --foreground: #171717; + --foreground: #232323; + + /* Brand palette — lifted from the reference store (deep green + gold on + off-white, dark ink for header/footer). Flat, no gradients. */ + --color-brand: #00593d; + --color-brand-dark: #013d2a; + --color-brand-light: #e7f0ec; + --color-ink: #232323; + --color-ink-soft: #3a3a3a; + --color-body: #5c6873; + --color-gold: #d3a907; + --color-gold-dark: #a98704; + --color-surface: #f9f9f9; + --color-line: #e7e7e7; } @theme inline { --color-background: var(--background); --color-foreground: var(--foreground); - --font-sans: var(--font-geist-sans); - --font-mono: var(--font-geist-mono); -} -@media (prefers-color-scheme: dark) { - :root { - --background: #0a0a0a; - --foreground: #ededed; - } + --color-brand: var(--color-brand); + --color-brand-dark: var(--color-brand-dark); + --color-brand-light: var(--color-brand-light); + --color-ink: var(--color-ink); + --color-ink-soft: var(--color-ink-soft); + --color-body: var(--color-body); + --color-gold: var(--color-gold); + --color-gold-dark: var(--color-gold-dark); + --color-surface: var(--color-surface); + --color-line: var(--color-line); + + --font-fa: var(--font-fa); + --font-en: var(--font-en); + + --container-boxed: 1320px; } body { background: var(--background); - color: var(--foreground); - font-family: Arial, Helvetica, sans-serif; + color: var(--color-body); + font-family: var(--font-fa), Tahoma, sans-serif; + font-weight: 300; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + color: var(--color-ink); +} + +.font-en { + font-family: var(--font-en), sans-serif; +} + +.boxed { + width: 100%; + max-width: var(--container-boxed); + margin-inline: auto; + padding-inline: 1rem; +} + +@media (min-width: 768px) { + .boxed { + padding-inline: 1.5rem; + } +} + +/* Swiper flat-styling overrides */ +.swiper { + overflow: visible; +} + +.swiper-pagination-bullet { + background: var(--color-line) !important; + opacity: 1 !important; + width: 7px !important; + height: 7px !important; +} + +.swiper-pagination-bullet-active { + background: var(--color-brand) !important; + width: 20px !important; + border-radius: 4px !important; +} + +.hero-swiper .swiper-pagination-bullet { + background: rgba(255, 255, 255, 0.55) !important; +} + +.hero-swiper .swiper-pagination-bullet-active { + background: var(--color-gold) !important; +} + +/* Minimal styling for CMS-authored HTML (product/blog descriptions) */ +.rich-text p { + margin-bottom: 1em; +} + +.rich-text ul, +.rich-text ol { + margin-bottom: 1em; + padding-inline-start: 1.25em; +} + +.rich-text li { + margin-bottom: 0.4em; +} + +.rich-text a { + color: var(--color-brand); + text-decoration: underline; +} + +.rich-text img { + max-width: 100%; + border-radius: 0.75rem; + margin-block: 1em; +} + +.rich-text strong { + color: var(--color-ink); } diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 9852c15..43eeea4 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,29 +1,38 @@ import type { Metadata } from "next"; -import { Geist, Geist_Mono } from "next/font/google"; +import { Rajdhani } from "next/font/google"; import "./globals.css"; +import { iranYekan } from "./fonts"; +import Header from "@/components/Header"; +import Footer from "@/components/Footer"; +import { getCategories, safe } from "@/lib/api"; +import { getMegaMenuColumns } from "@/lib/categoryTree"; -const geistSans = Geist({ - variable: "--font-geist-sans", - subsets: ["latin"], -}); - -const geistMono = Geist_Mono({ - variable: "--font-geist-mono", +const rajdhani = Rajdhani({ + variable: "--font-en", subsets: ["latin"], + weight: ["500", "600", "700"], + display: "swap", }); export const metadata: Metadata = { - title: "Create Next App", - description: "Generated by create next app", + title: "کودکانه | پوشاک بچگانه", + description: "فروشگاه اینترنتی پوشاک بچگانه، دخترانه و پسرانه با جدیدترین مدل‌ها", }; -export default function RootLayout({ children }: LayoutProps<"/">) { +export default async function RootLayout({ children }: LayoutProps<"/">) { + const categoryColumns = await safe(getCategories().then(getMegaMenuColumns), []); + return ( - {children} + +
+ {children} +