diff --git a/client/src/pages/About.jsx b/client/src/pages/About.jsx index 3f1169a..157a02f 100644 --- a/client/src/pages/About.jsx +++ b/client/src/pages/About.jsx @@ -11,7 +11,7 @@ import { CheckCircle, Sparkles, } from "lucide-react"; - +import { motion } from "framer-motion"; const About = () => { const [isVisible, setIsVisible] = useState(false); const [activeCard, setActiveCard] = useState(null); @@ -107,18 +107,49 @@ const About = () => { ]; return ( -
+ {/* Animated Background Elements */} -
-
-
-
-
+ + + + + {/* Main Content */}
{/* Hero Section */} -
+
{

-
+ {/* Stats Section */} -
+
{stats.map((stat, index) => ( -
{ : "opacity-0 translate-y-10" }`} style={{ transitionDelay: `${index * 150}ms` }} + initial={{ opacity: 0, y: 30 }} + whileInView={{ opacity: 1, y: 0 }} + viewport={{ once: true, amount: 0.5 }} + transition={{ duration: 0.5, delay: index * 0.1 }} >
@@ -174,14 +215,20 @@ const About = () => {
{stat.label}
-
+ ))}
-
+ {/* Services Section */} -
+

@@ -195,7 +242,7 @@ const About = () => {
{services.map((service, index) => ( -
{ style={{ transitionDelay: `${index * 200}ms` }} onMouseEnter={() => setActiveCard(service.id)} onMouseLeave={() => setActiveCard(null)} + initial={{ opacity: 0, y: 40 }} + whileInView={{ opacity: 1, y: 0 }} + viewport={{ once: true, amount: 0.2 }} + transition={{ duration: 0.6, delay: index * 0.15 }} > {/* Card Background */}
{ {/* Features */}
{service.features.map((feature, featureIndex) => ( -
{ : "opacity-70 translate-x-2" }`} style={{ transitionDelay: `${featureIndex * 100}ms` }} + initial={{ opacity: 0, x: 10 }} + whileInView={{ opacity: 1, x: 0 }} + viewport={{ once: true, amount: 0.2 }} + transition={{ duration: 0.4, delay: featureIndex * 0.07 }} > {feature} -
+ ))}
@@ -261,14 +316,20 @@ const About = () => { {/* Hover Effect */}
-
+ ))}

-
+ {/* CTA Section */} -
+

@@ -288,9 +349,9 @@ const About = () => {

- +
- + ); }; diff --git a/client/src/pages/Blog.jsx b/client/src/pages/Blog.jsx index 158d366..e86bc62 100644 --- a/client/src/pages/Blog.jsx +++ b/client/src/pages/Blog.jsx @@ -1,6 +1,6 @@ import React, { useState, useEffect } from 'react'; import { Calendar, User, Clock, ArrowRight, Sparkles, Eye, Heart, Share2, BookOpen, TrendingUp, Star } from 'lucide-react'; - +import { motion } from 'framer-motion'; const blogs = [ { id: 1, @@ -220,7 +220,12 @@ const Blog = () => { ); return ( -
+ {/* Animated Background */}
@@ -229,7 +234,13 @@ const Blog = () => {
{/* Header Section */} -
+
@@ -244,10 +255,16 @@ const Blog = () => {

Discover evidence-based articles, expert advice, and practical tips to support your parenting journey with confidence and knowledge.

-
+ {/* Search and Filters */} -
+
{/* Search Bar */}
@@ -284,41 +301,73 @@ const Blog = () => { ))}
-
+ {/* Featured Articles */} {featuredBlogs.length > 0 && ( -
+

Featured Articles

{featuredBlogs.map(blog => ( - + + + ))}
-
+ )} {/* Regular Articles */} {regularBlogs.length > 0 && ( -
+

Latest Articles

{regularBlogs.map(blog => ( - + + + ))}
-
+ )} {/* No Results */} {filteredBlogs.length === 0 && ( -
+
@@ -333,22 +382,28 @@ const Blog = () => { > Show All Articles -
+ )} {/* Load More Button */} {filteredBlogs.length > 0 && ( -
+ -
+ )}
-
+ ); }; diff --git a/client/src/pages/Home.jsx b/client/src/pages/Home.jsx index 6bce729..19eaf20 100644 --- a/client/src/pages/Home.jsx +++ b/client/src/pages/Home.jsx @@ -15,20 +15,17 @@ import { import { Swiper, SwiperSlide } from "swiper/react"; import { EffectCoverflow, Pagination, Autoplay } from "swiper/modules"; import { Link } from "react-router-dom"; - +import { motion } from "framer-motion"; import "swiper/css"; import "swiper/css/effect-coverflow"; import "swiper/css/pagination"; import { useNavigate } from "react-router-dom"; - const HomePage = () => { const navigate = useNavigate(); // ✅ Add this if missing const [isVisible, setIsVisible] = useState({}); const [mousePosition, setMousePosition] = useState({ x: 0, y: 0 }); - - useEffect(() => { const handleMouseMove = (e) => { setMousePosition({ x: e.clientX, y: e.clientY }); @@ -37,7 +34,6 @@ const HomePage = () => { return () => window.removeEventListener("mousemove", handleMouseMove); }, []); - const handleIntersection = (entries) => { entries.forEach((entry) => { setIsVisible((prev) => ({ @@ -92,7 +88,6 @@ const HomePage = () => { image: "https://res.cloudinary.com/dbnticsz8/image/upload/v1734934194/Infant%20care%20Compass/gheqjy0npqdkyhgqds43.png", link: "#", - }, { icon: , @@ -104,7 +99,6 @@ const HomePage = () => { "https://res.cloudinary.com/dbnticsz8/image/upload/v1734935048/Infant%20care%20Compass/crqtr4wfu69wmqnulmja.png", link: "#", - }, { icon: , @@ -115,7 +109,6 @@ const HomePage = () => { image: "https://res.cloudinary.com/dbnticsz8/image/upload/v1734935847/Infant%20care%20Compass/yf0tea4dqhjf4ww3hjcz.png", link: "/learning-hub", - }, ]; @@ -126,8 +119,8 @@ const HomePage = () => { content: "The AI-powered insights helped me understand my baby's needs like never before. It's like having a pediatrician in your pocket!", rating: 5, - avatar:"https://images.unsplash.com/photo-1509868918748-a554ad25f858?w=100&h=100&fit=crop&crop=face", - + avatar: + "https://images.unsplash.com/photo-1509868918748-a554ad25f858?w=100&h=100&fit=crop&crop=face", }, { name: "Michael Rodriguez", @@ -168,8 +161,12 @@ const HomePage = () => { ]; return ( - -
+ {/* Animated Background Elements */}
@@ -183,12 +180,16 @@ const HomePage = () => { >
- {/* Mouse Follower Effect */} - {/* Hero Section */} -
+
@@ -211,7 +212,7 @@ const HomePage = () => {
-

+

Revolutionary AI-powered platform transforming how parents navigate their child's early years with @@ -233,8 +234,9 @@ const HomePage = () => {

- -
-
+ {/* Services Section */}
-

+

Revolutionary Care Solutions

@@ -350,30 +352,30 @@ const HomePage = () => { Learn More -

- - - -
- {service.icon}
-

{service.title}

-

{service.description}

- {service.title} -

Learn More →

-
+ + +
+ {service.icon} +
+

{service.title}

+

{service.description}

+ {service.title} +

+ Learn More → +

+
+
))} - - - +
@@ -405,11 +407,12 @@ const HomePage = () => {
- +
@@ -446,7 +449,8 @@ const HomePage = () => { See It In Action

- Watch our quick demo to see how InfantCareCompass makes parenting easier + Watch our quick demo to see how InfantCareCompass makes parenting + easier

@@ -463,7 +467,10 @@ const HomePage = () => {
- +
@@ -473,24 +480,32 @@ const HomePage = () => { { icon: , title: "Vaccination Tracking", - description: "Never miss an important vaccination with our smart tracking system" + description: + "Never miss an important vaccination with our smart tracking system", }, { icon: , title: "Milestone Monitoring", - description: "Track your baby's growth and development with ease" + description: + "Track your baby's growth and development with ease", }, { icon: , title: "Expert Community", - description: "Connect with other parents and healthcare professionals" - } + description: + "Connect with other parents and healthcare professionals", + }, ].map((feature, index) => ( -
+
{feature.icon}
-

{feature.title}

+

+ {feature.title} +

{feature.description}

))} @@ -500,69 +515,68 @@ const HomePage = () => { {/* Testimonials Section */}
-
-
-

- Voices of Trust -

-

- Real stories from parents who've transformed their journey with us -

-
- - - {testimonials.map((testimonial, index) => ( - - -
- {[...Array(testimonial.rating)].map((_, i) => ( - - ))} -
- -

- "{testimonial.content}" +

+
+

+ Voices of Trust +

+

+ Real stories from parents who've transformed their journey with us

+
-
- {testimonial.name} -
-
- {testimonial.name} -
-
- {testimonial.role} -
-
-
- - - ))} - -
-
+ + {testimonials.map((testimonial, index) => ( + + +
+ {[...Array(testimonial.rating)].map((_, i) => ( + + ))} +
+ +

+ "{testimonial.content}" +

+
+ {testimonial.name} +
+
+ {testimonial.name} +
+
+ {testimonial.role} +
+
+
+
+
+ ))} +
+
+ {/* CTA Section */}
@@ -578,8 +592,9 @@ const HomePage = () => {

- - @@ -597,7 +613,7 @@ const HomePage = () => {
- + ); };