chore: setup project for production

This commit is contained in:
afnaann
2025-02-19 17:00:55 +05:30
commit 12caeee710
271 changed files with 16199 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
import Image from "next/image";
import React from "react";
const BuyRudrakshaOne = () => {
return (
<div className="h-[50vh] sm:flex justify-between w-full items-center gap-7 hidden bg-[url('/sidhi-mala/Artboard_1_bf5ccd46-7152-4355-82a8-9e9f27c1bfc2.jpg')]">
<div className="w-[100%] flex justify-end">
<Image
src="/sidhi-mala/sidhha-feature-2_medium.png"
alt=""
layout="intrinsic"
className="object-contain rounded-md"
/>{" "}
</div>
<div className="flex flex-col gap-7 text-white">
<h1 className="text-4xl font-serif">Rudraksha</h1>
<p className="w-3/4 text-lg">
Rudraksha Gupta Rudraksha offers an extensive collection of A+ Grade,
high-quality, and X-ray certified Gupta Rudraksha, ranging from 1
Mukhi to 26 Mukhi, along with rare beads like Gaurishankar, Ganesha,
Garbha Gauri, and Trijuti Rudraksha. Rudraksha has been used as a tool
for professional and spiritual transformation since the beginning of
the time. Sanatana Dharma regards rudraksha as the most potent and
powerful tool to purify one&apos;s Karma and attract prosperity. As
the world&apos;s largest supplier of authentic Gupta Rudraksha, Gupta
Rudraksha ensures each bead is certified for authenticity and
energized for effectiveness following Vedic guidelines. Discover the
power of original Gupta Rudraksha at Gupta Rudraksha.
</p>
</div>
</div>
);
};
export default BuyRudrakshaOne;

View File

@@ -0,0 +1,55 @@
import Link from "next/link";
import React from "react";
const PopularRudrakshaCombination = () => {
return (
<div className="bg-[#EDE8E0] min-h-screen p-4">
<h1 className="sm:pt-14 pb-8 font-serif mt-4 sm:text-6xl text-2xl text-zinc-800 text-center">
Popular Rudraksha Combination
</h1>
<div className="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-2 sm:gap-4 gap-7">
<div className="text-white flex flex-col bg-[url('/buy-rudraksha/zodiac_combo_1x_1_f7d5771c-e186-4efe-93ec-f985fd30178d.webp')] justify-start sm:h-[300px] bg-cover bg-center bg-no-repeat w-full p-6">
<h1 className="sm:text-4xl sm:w-[30%] text-lg mb-3">
Zodiac Combination
</h1>
<Link href={"/collections/zodiac-combination"}>
<button className="px-4 py-4 border-none text-white border font-semibold bg-[#b68d40] ">
Explore Combination
</button>
</Link>
</div>
<div className="text-white flex flex-col justify-start sm:h-[300px] bg-cover bg-center w-full p-6 bg-[url('/buy-rudraksha/goals_aspirations_combo_1x_1_6da0bb78-1e20-4c48-b7a5-de4d6995b51c.webp')]">
<h1 className="sm:text-4xl sm:w-[60%] text-lg mb-3">Combination by Goals
and Aspirations</h1>
<Link href={"/collections/combination-by-goals-and-aspirations"}>
<button className="px-4 py-4 border-none text-white border font-semibold bg-[#b68d40] ">
Explore Combination
</button>
</Link>
</div>
<div className="text-white flex flex-col justify-start sm:h-[300px] bg-cover bg-center bg-no-repeat w-full p-6 bg-[url('/buy-rudraksha/maha_dasha_1x_1_e12fc2ae-e143-45fd-9199-33e0012f1b2c.webp')]">
<h1 className="sm:text-4xl sm:w-[50%] text-lg mb-3">Combination for
Maha Dasha</h1>
<Link href={"/collections/combination-for-maha-dasha"}>
<button className="px-4 py-4 border-none text-white border font-semibold bg-[#b68d40] ">
Explore Combination
</button>
</Link>
</div>
<div className="text-white flex flex-col justify-start sm:h-[300px] bg-cover bg-center w-full p-6 bg-no-repeat bg-[url('/buy-rudraksha/rudraksha_kavach_1x_1_1d5d5deb-91bb-4e92-9a42-76a7b84aef11.webp')]">
<h1 className="sm:text-4xl sm:w-[30%] text-lg mb-3">Rudraksha Kavach</h1>
<Link href={"/collections/rudraksha-kavach"}>
<button className="px-4 py-4 border-none text-white border font-semibold bg-[#b68d40] ">
Explore Combination
</button>
</Link>
</div>
</div>
</div>
);
};
export default PopularRudrakshaCombination;

View File

@@ -0,0 +1,77 @@
import ZodiacBasedSignClient from "./ZodiacBasedSignClient";
const zodiacSigns = [
{
name: "Aries",
rudraksha: { price: 200.0, type: "Medium", mukhi: 13 },
gaurishankar: { price: 200.0, type: "Medium", mukhi: 13 },
},
{
name: "Gemini",
rudraksha: { price: 65.0, type: "Medium", mukhi: 6 },
gaurishankar: { price: 200.0, type: "Collector", mukhi: 13 },
},
{
name: "Leo",
rudraksha: { price: 160.0, type: "Medium", mukhi: 12 },
gaurishankar: { price: 200.0, type: "Collector", mukhi: 12 },
},
{
name: "Libra",
rudraksha: { price: 160.0, type: "Medium", mukhi: 12 },
gaurishankar: { price: 400.0, type: "Collector", mukhi: 15 },
},
{
name: "Sagittarius",
rudraksha: { price: 65.0, type: "Medium", mukhi: 5 },
gaurishankar: { price: 400.0, type: "Collector", mukhi: 14 },
},
{
name: "Taurus",
rudraksha: { price: 160.0, type: "Medium", mukhi: 12 },
gaurishankar: { price: 400.0, type: "Collector", mukhi: 15 },
},
{
name: "Cancer",
rudraksha: { price: 300.0, type: "Medium", mukhi: 2 },
gaurishankar: { price: 200.0, type: "Collector", mukhi: 10 },
},
{
name: "Virgo",
rudraksha: { price: 55.0, type: "Medium", mukhi: 6 },
gaurishankar: { price: 200.0, type: "Collector", mukhi: 13 },
},
{
name: "Scorpio",
rudraksha: { price: 200.0, type: "Medium", mukhi: 13 },
gaurishankar: { price: 200.0, type: "Collector", mukhi: 13 },
},
{
name: "Capricorn",
rudraksha: { price: null, type: "Medium", mukhi: null },
gaurishankar: { price: 400.0, type: "Collector", mukhi: 14 },
},
{
name: "Aquarius",
rudraksha: { price: null, type: "Medium", mukhi: null },
gaurishankar: { price: 400.0, type: "Collector", mukhi: 14 },
},
{
name: "Pisces",
rudraksha: { price: 65.0, type: "Medium", mukhi: 5 },
gaurishankar: { price: 400.0, type: "Collector", mukhi: 14 },
},
];
const ZodiacBasedSign = () => {
return (
<div className="min-h-screen py-10 bg-slate-50">
<h1 className="text-4xl font-serif text-zinc-800 text-center mb-10">
Rudraksha Based On Zodiac Signs
</h1>
<ZodiacBasedSignClient zodiacSigns={zodiacSigns} />
</div>
);
};
export default ZodiacBasedSign;

View File

@@ -0,0 +1,70 @@
"use client";
import Link from "next/link";
import React from "react";
const ZodiacBasedSignClient = ({ zodiacSigns }) => {
return (
<div className="container mx-auto px-4">
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 gap-6">
{zodiacSigns.map((sign) => (
<div
key={sign.name}
className="border border-[#AC8C6B] overflow-hidden"
>
<div className="p-4 flex sm:flex-row flex-col sm:gap-0 gap-3">
<div className="sm:w-1/3 flex items-center justify-center">
<h2 className="sm:text-2xl uppercase font-serif text-yellow-800">
{sign.name}
</h2>
</div>
<div className="sm:w-2/3 grid grid-cols-2 gap-2">
<MiniCard
price={sign.rudraksha.price}
type={sign.rudraksha.type}
mukhi={sign.rudraksha.mukhi}
name="Rudraksha"
/>
<MiniCard
price={sign.gaurishankar.price}
type={sign.gaurishankar.type}
mukhi={sign.gaurishankar.mukhi}
name="Gauri Shankar"
/>
</div>
</div>
</div>
))}
</div>
</div>
);
};
const MiniCard = ({ price, type, mukhi, name }) => (
<div className="bg-pink-100 p-2 rounded">
<Link href={`/products/${mukhi}-mukhi-${name}`}>
{price !== null ? (
<p className="text-sm sm:text-[17px] my-2 w-1/2 font-medium text-zinc-700">
${price.toFixed(2)} | {type}
</p>
) : (
<p className="text-sm font-medium text-zinc-700">
Price not available | {type}
</p>
)}
</Link>
<Link href={`/products/${mukhi}-mukhi-${name}`}>
{mukhi !== null ? (
<p className="text-sm sm:text-[17px] w-1/2 text-zinc-600">
{mukhi} Mukhi {name}
</p>
) : (
<p className="text-sm sm:text-[17px] my-2 w-1/2 text-zinc-600">
Mukhi not specified | {name}
</p>
)}
</Link>
</div>
);
export default ZodiacBasedSignClient;