From 9a42e8b6e5dd56f33080c199ab8cead06481511c Mon Sep 17 00:00:00 2001 From: Goutam Date: Thu, 23 Jul 2026 20:08:08 +0530 Subject: [PATCH] Initial commit: UP Parivaar Dallas site --- .gitignore | 8 + README.md | 49 + app/about/page.tsx | 251 ++ app/contact/page.tsx | 108 + app/events/detail/page.tsx | 120 + app/events/page.tsx | 37 + app/gallery/page.tsx | 200 ++ app/knowledge/page.tsx | 179 ++ app/layout.tsx | 52 + app/page.tsx | 285 +++ app/why-join/page.tsx | 268 ++ components/Carousel.tsx | 43 + components/EventCard.tsx | 95 + components/Faq.tsx | 30 + components/Footer.tsx | 104 + components/HomeJourney.tsx | 84 + components/JourneyBanner.tsx | 83 + components/Logo.tsx | 43 + components/MembershipForm.tsx | 100 + components/Navbar.tsx | 103 + components/ScrollReveal.tsx | 108 + components/Tabs.tsx | 27 + components/WhatsAppFab.tsx | 16 + components/ui.tsx | 71 + lib/data.ts | 136 ++ next.config.mjs | 10 + package-lock.json | 2099 ++++++++++++++++ package.json | 25 + postcss.config.mjs | 7 + public/img/Nidhi Jain.png | Bin 0 -> 153511 bytes public/img/Pankaj Mishra.png | Bin 0 -> 57762 bytes public/img/Venky Pandey.png | Bin 0 -> 138759 bytes public/img/Vikram Nair.png | Bin 0 -> 54103 bytes public/img/about_10_.jpg | Bin 0 -> 40462 bytes public/img/about_11_.jpg | Bin 0 -> 42983 bytes public/img/about_13_.jpg | Bin 0 -> 31234 bytes public/img/about_14_.jpg | Bin 0 -> 30958 bytes public/img/about_15_.jpg | Bin 0 -> 33681 bytes public/img/about_17_.jpg | Bin 0 -> 37092 bytes public/img/about_18_.jpg | Bin 0 -> 110895 bytes public/img/about_19_.jpg | Bin 0 -> 108256 bytes public/img/about_1_.jpg | Bin 0 -> 37191 bytes public/img/about_20_.jpg | Bin 0 -> 72214 bytes public/img/about_21_.jpg | Bin 0 -> 61436 bytes public/img/about_22_.jpg | Bin 0 -> 81348 bytes public/img/about_23_.jpg | Bin 0 -> 60831 bytes public/img/about_24_.jpg | Bin 0 -> 69740 bytes public/img/about_2_.jpg | Bin 0 -> 90625 bytes public/img/about_3_.jpg | Bin 0 -> 134808 bytes public/img/about_4_.jpg | Bin 0 -> 88162 bytes public/img/about_5_.jpg | Bin 0 -> 57268 bytes public/img/about_6_.jpg | Bin 0 -> 62771 bytes public/img/about_7_.jpg | Bin 0 -> 114641 bytes public/img/about_8_.jpg | Bin 0 -> 96563 bytes public/img/about_9_.jpg | Bin 0 -> 5529 bytes public/img/aboutvectore.png | Bin 0 -> 12793 bytes public/img/diwalievent.png | Bin 0 -> 299521 bytes public/img/event1.jpg | Bin 0 -> 299521 bytes public/img/eventbaba.png | Bin 0 -> 73676 bytes public/img/events_10_.jpg | Bin 0 -> 36482 bytes public/img/events_1_.jpg | Bin 0 -> 299521 bytes public/img/events_2_.jpg | Bin 0 -> 77236 bytes public/img/events_3_.jpg | Bin 0 -> 299521 bytes public/img/events_4_.jpg | Bin 0 -> 79919 bytes public/img/events_5_.jpg | Bin 0 -> 33182 bytes public/img/events_6_.jpg | Bin 0 -> 37980 bytes public/img/events_7_.jpg | Bin 0 -> 28531 bytes public/img/events_8_.jpg | Bin 0 -> 33815 bytes public/img/events_9_.jpg | Bin 0 -> 31889 bytes public/img/eventsdetail_1_.jpg | Bin 0 -> 371473 bytes public/img/gallery_10_.jpg | Bin 0 -> 99684 bytes public/img/gallery_11_.jpg | Bin 0 -> 74541 bytes public/img/gallery_12_.jpg | Bin 0 -> 109036 bytes public/img/gallery_13_.jpg | Bin 0 -> 85225 bytes public/img/gallery_14_.jpg | Bin 0 -> 115681 bytes public/img/gallery_15_.jpg | Bin 0 -> 117555 bytes public/img/gallery_16_.jpg | Bin 0 -> 109755 bytes public/img/gallery_17_.jpg | Bin 0 -> 80696 bytes public/img/gallery_18_.jpg | Bin 0 -> 172164 bytes public/img/gallery_19_.jpg | Bin 0 -> 200403 bytes public/img/gallery_1_.jpg | Bin 0 -> 363510 bytes public/img/gallery_20_.jpg | Bin 0 -> 413292 bytes public/img/gallery_21_.jpg | Bin 0 -> 320029 bytes public/img/gallery_2_.jpg | Bin 0 -> 184488 bytes public/img/gallery_3_.jpg | Bin 0 -> 226899 bytes public/img/gallery_4_.jpg | Bin 0 -> 231441 bytes public/img/gallery_5_.jpg | Bin 0 -> 202349 bytes public/img/gallery_6_.jpg | Bin 0 -> 188729 bytes public/img/gallery_7_.jpg | Bin 0 -> 85347 bytes public/img/gallery_8_.jpg | Bin 0 -> 93915 bytes public/img/gallery_9_.jpg | Bin 0 -> 100477 bytes public/img/guruimage.png | Bin 0 -> 57150 bytes public/img/home-journey__photo.png | Bin 0 -> 588575 bytes public/img/home.png | Bin 0 -> 2877008 bytes public/img/home_10_.jpg | Bin 0 -> 1229355 bytes public/img/home_11_.jpg | Bin 0 -> 601144 bytes public/img/home_12_.jpg | Bin 0 -> 277726 bytes public/img/home_13_.jpg | Bin 0 -> 396969 bytes public/img/home_14_.jpg | Bin 0 -> 360380 bytes public/img/home_1_.jpg | Bin 0 -> 1869462 bytes public/img/home_2_.jpg | Bin 0 -> 213573 bytes public/img/home_3_.jpg | Bin 0 -> 181947 bytes public/img/home_4_.jpg | Bin 0 -> 385991 bytes public/img/home_5_.jpg | Bin 0 -> 222187 bytes public/img/home_6_.jpg | Bin 0 -> 90198 bytes public/img/home_7_.jpg | Bin 0 -> 70476 bytes public/img/home_8_.jpg | Bin 0 -> 4786 bytes public/img/home_9_.jpg | Bin 0 -> 383632 bytes public/img/knowledge_10_.jpg | Bin 0 -> 117973 bytes public/img/knowledge_11_.jpg | Bin 0 -> 119696 bytes public/img/knowledge_1_.jpg | Bin 0 -> 111025 bytes public/img/knowledge_2_.jpg | Bin 0 -> 76113 bytes public/img/knowledge_3_.jpg | Bin 0 -> 80650 bytes public/img/knowledge_4_.jpg | Bin 0 -> 96065 bytes public/img/knowledge_5_.jpg | Bin 0 -> 112636 bytes public/img/knowledge_6_.jpg | Bin 0 -> 139487 bytes public/img/knowledge_7_.jpg | Bin 0 -> 138030 bytes public/img/knowledge_8_.jpg | Bin 0 -> 108877 bytes public/img/knowledge_9_.jpg | Bin 0 -> 109475 bytes public/img/logoaboutteam.png | Bin 0 -> 6382 bytes public/img/quotes.svg | 3 + public/img/whyjoin_1_.jpg | Bin 0 -> 240565 bytes public/img/whyjoin_2_.jpg | Bin 0 -> 57816 bytes public/img/whyjoin_3_.jpg | Bin 0 -> 79201 bytes public/img/whyjoin_4_.jpg | Bin 0 -> 81943 bytes public/img/whyjoin_5_.jpg | Bin 0 -> 20612 bytes styles/style.css | 3644 ++++++++++++++++++++++++++++ tsconfig.json | 21 + 128 files changed, 8409 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 app/about/page.tsx create mode 100644 app/contact/page.tsx create mode 100644 app/events/detail/page.tsx create mode 100644 app/events/page.tsx create mode 100644 app/gallery/page.tsx create mode 100644 app/knowledge/page.tsx create mode 100644 app/layout.tsx create mode 100644 app/page.tsx create mode 100644 app/why-join/page.tsx create mode 100644 components/Carousel.tsx create mode 100644 components/EventCard.tsx create mode 100644 components/Faq.tsx create mode 100644 components/Footer.tsx create mode 100644 components/HomeJourney.tsx create mode 100644 components/JourneyBanner.tsx create mode 100644 components/Logo.tsx create mode 100644 components/MembershipForm.tsx create mode 100644 components/Navbar.tsx create mode 100644 components/ScrollReveal.tsx create mode 100644 components/Tabs.tsx create mode 100644 components/WhatsAppFab.tsx create mode 100644 components/ui.tsx create mode 100644 lib/data.ts create mode 100644 next.config.mjs create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 postcss.config.mjs create mode 100644 public/img/Nidhi Jain.png create mode 100644 public/img/Pankaj Mishra.png create mode 100644 public/img/Venky Pandey.png create mode 100644 public/img/Vikram Nair.png create mode 100644 public/img/about_10_.jpg create mode 100644 public/img/about_11_.jpg create mode 100644 public/img/about_13_.jpg create mode 100644 public/img/about_14_.jpg create mode 100644 public/img/about_15_.jpg create mode 100644 public/img/about_17_.jpg create mode 100644 public/img/about_18_.jpg create mode 100644 public/img/about_19_.jpg create mode 100644 public/img/about_1_.jpg create mode 100644 public/img/about_20_.jpg create mode 100644 public/img/about_21_.jpg create mode 100644 public/img/about_22_.jpg create mode 100644 public/img/about_23_.jpg create mode 100644 public/img/about_24_.jpg create mode 100644 public/img/about_2_.jpg create mode 100644 public/img/about_3_.jpg create mode 100644 public/img/about_4_.jpg create mode 100644 public/img/about_5_.jpg create mode 100644 public/img/about_6_.jpg create mode 100644 public/img/about_7_.jpg create mode 100644 public/img/about_8_.jpg create mode 100644 public/img/about_9_.jpg create mode 100644 public/img/aboutvectore.png create mode 100644 public/img/diwalievent.png create mode 100644 public/img/event1.jpg create mode 100644 public/img/eventbaba.png create mode 100644 public/img/events_10_.jpg create mode 100644 public/img/events_1_.jpg create mode 100644 public/img/events_2_.jpg create mode 100644 public/img/events_3_.jpg create mode 100644 public/img/events_4_.jpg create mode 100644 public/img/events_5_.jpg create mode 100644 public/img/events_6_.jpg create mode 100644 public/img/events_7_.jpg create mode 100644 public/img/events_8_.jpg create mode 100644 public/img/events_9_.jpg create mode 100644 public/img/eventsdetail_1_.jpg create mode 100644 public/img/gallery_10_.jpg create mode 100644 public/img/gallery_11_.jpg create mode 100644 public/img/gallery_12_.jpg create mode 100644 public/img/gallery_13_.jpg create mode 100644 public/img/gallery_14_.jpg create mode 100644 public/img/gallery_15_.jpg create mode 100644 public/img/gallery_16_.jpg create mode 100644 public/img/gallery_17_.jpg create mode 100644 public/img/gallery_18_.jpg create mode 100644 public/img/gallery_19_.jpg create mode 100644 public/img/gallery_1_.jpg create mode 100644 public/img/gallery_20_.jpg create mode 100644 public/img/gallery_21_.jpg create mode 100644 public/img/gallery_2_.jpg create mode 100644 public/img/gallery_3_.jpg create mode 100644 public/img/gallery_4_.jpg create mode 100644 public/img/gallery_5_.jpg create mode 100644 public/img/gallery_6_.jpg create mode 100644 public/img/gallery_7_.jpg create mode 100644 public/img/gallery_8_.jpg create mode 100644 public/img/gallery_9_.jpg create mode 100644 public/img/guruimage.png create mode 100644 public/img/home-journey__photo.png create mode 100644 public/img/home.png create mode 100644 public/img/home_10_.jpg create mode 100644 public/img/home_11_.jpg create mode 100644 public/img/home_12_.jpg create mode 100644 public/img/home_13_.jpg create mode 100644 public/img/home_14_.jpg create mode 100644 public/img/home_1_.jpg create mode 100644 public/img/home_2_.jpg create mode 100644 public/img/home_3_.jpg create mode 100644 public/img/home_4_.jpg create mode 100644 public/img/home_5_.jpg create mode 100644 public/img/home_6_.jpg create mode 100644 public/img/home_7_.jpg create mode 100644 public/img/home_8_.jpg create mode 100644 public/img/home_9_.jpg create mode 100644 public/img/knowledge_10_.jpg create mode 100644 public/img/knowledge_11_.jpg create mode 100644 public/img/knowledge_1_.jpg create mode 100644 public/img/knowledge_2_.jpg create mode 100644 public/img/knowledge_3_.jpg create mode 100644 public/img/knowledge_4_.jpg create mode 100644 public/img/knowledge_5_.jpg create mode 100644 public/img/knowledge_6_.jpg create mode 100644 public/img/knowledge_7_.jpg create mode 100644 public/img/knowledge_8_.jpg create mode 100644 public/img/knowledge_9_.jpg create mode 100644 public/img/logoaboutteam.png create mode 100644 public/img/quotes.svg create mode 100644 public/img/whyjoin_1_.jpg create mode 100644 public/img/whyjoin_2_.jpg create mode 100644 public/img/whyjoin_3_.jpg create mode 100644 public/img/whyjoin_4_.jpg create mode 100644 public/img/whyjoin_5_.jpg create mode 100644 styles/style.css create mode 100644 tsconfig.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..204e73d --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +/node_modules +/.next +/out +/build +.env* +.DS_Store +*.tsbuildinfo +next-env.d.ts diff --git a/README.md b/README.md new file mode 100644 index 0000000..1551e7d --- /dev/null +++ b/README.md @@ -0,0 +1,49 @@ +# UP Parivaar Dallas — Website + +A pixel-faithful Next.js (App Router) implementation of the **UP Parivar Dallas** +Figma design (Page 1 — all 7 screens). + +## Pages + +| Route | Screen | +|-------|--------| +| `/` | Home | +| `/about` | About Us | +| `/events` | Events | +| `/events/detail` | Event Detail (Diwali Mahotsav) | +| `/gallery` | Gallery | +| `/knowledge` | Knowledge Hub | +| `/why-join` | Why Join / Membership | + +## Tech + +- **Next.js 15** (App Router) + **React 19** +- **Tailwind CSS 3** design system (`tailwind.config.ts` — brand colors, fonts, shadows) +- **Fonts:** Playfair Display (display headings — matches Figma's *Kalufonia*), Gloock (serif), Parkinsans (body — the Figma UI font), via `next/font` +- All imagery exported directly from the Figma file into `public/img` +- `next/image` optimization throughout + +## Run + +```bash +npm install +npm run dev # http://localhost:3000 +# or +npm run build && npm run start +``` + +## Structure + +``` +app/ # route segments (one folder per page) +components/ # Navbar, Footer, Logo, EventCard, Tabs, Carousel, + # Faq, MembershipForm, WhatsAppFab, ui primitives +lib/data.ts # shared content (events, testimonials, FAQs) +public/img/ # design assets exported from Figma +``` + +## Design tokens + +- Primary orange `#F45700`, light orange `#FF8001`, gold `#FFC107` +- Cream background `#FFF7F3`, deep-brown footer `#1C0E03` +- Logo accents: navy `#150D8E`, green `#7ECA4F` diff --git a/app/about/page.tsx b/app/about/page.tsx new file mode 100644 index 0000000..c3aa8ff --- /dev/null +++ b/app/about/page.tsx @@ -0,0 +1,251 @@ +import Image from "next/image"; +import { SectionHeading } from "@/components/ui"; +import Tabs from "@/components/Tabs"; +import Carousel from "@/components/Carousel"; +import Logo from "@/components/Logo"; + +export const metadata = { title: "About — UP Parivaar Dallas" }; + +const marquee = [ + "/img/about_8_.jpg", "/img/about_5_.jpg", "/img/about_3_.jpg", "/img/about_22_.jpg", + "/img/about_7_.jpg", "/img/about_2_.jpg", "/img/about_21_.jpg", "/img/about_24_.jpg", +]; + +const team = [ + { name: "Pankaj Mishra", role: "Operations Head", img: "/img/Pankaj%20Mishra.png" }, + { name: "Arjun Verma", role: "Chief Engineer", img: "/img/Vikram%20Nair.png" }, + { name: "Rohit Sharma", role: "Project Manager", img: "/img/Venky%20Pandey.png" }, + { name: "Sneha Reddy", role: "Project Manager", img: "/img/Nidhi%20Jain.png" }, + { name: "Vikram Nair", role: "Project Manager", img: "/img/Vikram%20Nair.png" }, + { name: "Amit Joshi", role: "Project Manager", img: "/img/Pankaj%20Mishra.png" }, +]; + +const committee = [ + { name: "Suresh Gupta", role: "Cultural Lead", img: "/img/Venky%20Pandey.png" }, + { name: "Neha Kapoor", role: "Events Lead", img: "/img/Nidhi%20Jain.png" }, + { name: "Deepak Rao", role: "Seva Coordinator", img: "/img/Pankaj%20Mishra.png" }, + { name: "Kavita Menon", role: "Youth Programs", img: "/img/Nidhi%20Jain.png" }, + { name: "Rahul Bose", role: "Finance", img: "/img/Vikram%20Nair.png" }, + { name: "Manish Tyagi", role: "Membership", img: "/img/Venky%20Pandey.png" }, +]; + +const whatWeDo = [ + { t: "Cultural Celebrations", d: "Organizing festivals and events that showcase the traditions and heritage of Uttar Pradesh.", img: "/img/about_19_.jpg" }, + { t: "Family Gatherings", d: "Creating opportunities for families to meet, connect, and build lasting friendships.", img: "/img/about_22_.jpg" }, + { t: "Community Programs", d: "Hosting activities that encourage engagement, learning, and collaboration.", img: "/img/about_21_.jpg" }, + { t: "Youth Engagement", d: "Helping younger generations stay connected to their culture and community.", img: "/img/about_24_.jpg" }, + { t: "Volunteer Initiatives", d: "Supporting charitable and community-focused causes through collective efforts.", img: "/img/about_20_.jpg" }, + { t: "Networking & Support", d: "Providing opportunities for personal, professional, and social connections.", img: "/img/about_23_.jpg" }, +]; + +const stats = [ + { n: "500+", l: "Community Members" }, + { n: "25+", l: "Events Organized" }, + { n: "100+", l: "Volunteer Hours" }, + { n: "20+", l: "Multiple Community" }, +]; + +function PersonCard({ p }: { p: { name: string; role: string; img: string } }) { + return ( +
+
+ {p.name} +
+
+

{p.name}

+

{p.role}

+
+
+ ); +} + +export default function AboutPage() { + return ( + <> + {/* HERO */} +
+
+ About UP Parivaar Dallas +

+ Bringing Uttar Pradesh's Roots, Culture & Traditions to Dallas +

+

+ A nonprofit community organization connecting families, celebrating + heritage, and strengthening community bonds. +

+
+
+ {marquee.map((src, i) => { + const variant = ["about-hero__marquee-item--wide", "about-hero__marquee-item--narrow", ""][i % 3]; + return ( +
+ +
+ ); + })} +
+
+ + {/* FOUNDERS */} +
+
+ Led by the community, for the community} + desc="Not a company. A volunteer-run family — powered by people who simply care." + align="split" + /> +
+
+
+ Venky Pandey +
+
+
+

Venky Pandey

+

Founder

+
+

venkeypj@upparivaar.com

+
+
+
+ +
+
+
+ Nidhi Jain +
+
+
+

Nidhi Jain

+

Co-Founder

+
+

nidhij@upparivaar.com

+
+
+
+ +
+ + {team.map((p) => ( + + ))} + + + {committee.map((p) => ( + + ))} + +
+
+
+ + {/* MISSION / VISION */} +
+
+ +
+
+

Our Mission

+

+ Our mission is to strengthen the Uttar Pradesh community in Dallas + by fostering cultural pride, encouraging community engagement, and + creating opportunities for families to connect, celebrate, and + support one another. +

+

Mission Pillars

+
    + {["Preserve our cultural heritage", "Strengthen family and community bonds", "Support community service initiatives", "Inspire future generations", "Promote unity and belonging"].map((m) => ( +
  • + {m} +
  • + ))} +
+
+
+ Mission +
+
+
+ ), + }, + { + label: "Our Vision", + content: ( +
+
+
+

Our Vision

+

+ We envision a thriving, connected Uttar Pradesh community across + North Texas — where every family feels at home, every tradition is + celebrated, and every generation carries our culture forward with + pride. +

+

Vision Pillars

+
    + {["A borderless cultural network", "Trusted member-led community", "Opportunities for every generation", "A living archive of our stories", "Seva at the heart of everything"].map((m) => ( +
  • + {m} +
  • + ))} +
+
+
+ Vision +
+
+
+ ), + }, + ]} + /> + +
+ {stats.map((s) => ( +
+
+

{s.n}

+

{s.l}

+
+ +
+ ))} +
+ +
+ + {/* WHAT WE DO */} +
+
+
+

What We Do

+

+ Building connections through meaningful experiences that bring families, + friends, and communities together, creating lasting relationships, trust, + and belonging. +

+
+
+ {whatWeDo.map((w) => ( +
+
+ {w.t} +
+
+

{w.t}

+

{w.d}

+
+
+ ))} +
+
+
+ + ); +} diff --git a/app/contact/page.tsx b/app/contact/page.tsx new file mode 100644 index 0000000..d97edcf --- /dev/null +++ b/app/contact/page.tsx @@ -0,0 +1,108 @@ +import { Arrow } from "@/components/ui"; + +export const metadata = { title: "Contact Us — UP Parivaar Dallas" }; + +const info = [ + { + label: "Phone Number", + value: "(555) 123-4567", + icon: ( + + + + ), + }, + { + label: "Email Address", + value: "info@upparivaar.com", + icon: ( + + + + + ), + }, + { + label: "Office Hours", + value: ( + <> + Monday–Friday: 8am – 6pm +
+ Saturday: 9am – 3pm + + ), + icon: ( + + + + + ), + }, +]; + +export default function ContactPage() { + return ( + <> + {/* HERO */} +
+
+ UP Parivar Dallas · Est. 2010 +

Contact Us

+

+ Schedule a complimentary consultation with our community team. +

+
+
+ + {/* CONTACT CARD */} +
+
+
+ {/* Info panel */} +
+
+

Get In Touch

+
+

+ Reach out for events, membership, seva opportunities or partnership + queries. We're eager to help your family feel at home in Dallas! +

+
+ {info.map((it) => ( +
+ {it.icon} +
+

{it.label}

+

{it.value}

+
+
+ ))} +
+
+ + {/* Message form */} +
+

Send us a Message

+
+ + + + +