// Puja discovery + booking flow function PujaListScreen() { const list = [ ['Grih Pravesh Puja', 'गृह प्रवेश पूजा', '2.5 hr · 1 pandit', '5,100', '7,900', 'saffron', 'kalash', 'Bestseller'], ['Satyanarayan Katha', 'सत्यनारायण कथा', '2 hr · 1 pandit', '2,100', '2,800', 'gold', 'book'], ['Rudrabhishek', 'रुद्राभिषेक', '2 hr · 1–2 pandits', '3,100', null, 'rose', 'flame', 'Shravan special'], ['Mundan Sanskar', 'मुंडन संस्कार', '1.5 hr · 1 pandit', '2,500', '3,100', 'teal', 'lotus'], ]; return (
} /> AllNew beginningsSanskaarDosh nivaran
48 pujas Filter Sort: Popular
{list.map(([t, h, m, p, s, tone, ic, tag]) => ( {tag && {tag}}
{t}
{h} {m.split(' · ')[0]} {m.split(' · ')[1]}
from
))}
); } function PujaDetailScreen() { return (
{[1, 2, 3].map(i => )}
Most booked in DehradunSamagri included
Grih Pravesh Puja
गृह प्रवेश पूजा
Bless your new home before you move in — Vastu shanti, kalash sthapana and havan performed by a verified pandit, in your family's tradition.
{[['4.9★', '2.1k reviews'], ['2.5 hr', 'Duration'], ['1–3', 'Pandits'], ['324', 'This month']].map(([a, b], i) => (
{a}
{b}
))}
Choose your package
{[['Samanya', 'सामान्य', '5,100', '1 pandit', false], ['Uttam', 'उत्तम', '7,100', '2 pandits', true], ['Vishesh', 'विशेष', '11,000', '3 pandits', false]].map(([n, h, p, d, on]) => (
{on && RECOMMENDED}
{n}
{h}
₹{p}
{d}
))}
{['2 pandits · 3 hr vidhi', 'Navgraha shanti + Vastu havan', 'Full samagri kit (32 items)', 'Puja video recording'].map(t => ( {t} ))}
Puja vidhi पूजा विधि
{[['Swasti Vachan & Ganesh Puja', 'Opening invocation for peace', '15 min'], ['Kalash Sthapana', 'Inviting divine presence into the home', '20 min'], ['Navgraha & Vastu Shanti', 'Harmony with the nine planets', '45 min'], ['Havan & Purnahuti', 'Sacred fire, final offering & aarti', '60 min']].map(([t, s, d], i) => (
{i + 1}
{t}
{s}
{d}
))}
Samagri kit included
Pandit brings everything · 32 items
View list
{['saffron', 'gold', 'rose', 'kumkum', 'teal'].map(t => )}
+27
What families say
{[['MB', 'Manoj Bisht', 'Panditji explained every mantra to our children. Felt truly blessed.'], ['PR', 'Priya Rawat', 'On time, with all samagri. Very calm and traditional Garhwali vidhi.']].map(([i, n, q]) => (
{n}
★★★★★
"{q}"
))}
); } function MuhuratScreen() { const days = [['S', [null, null, null, 1, 2, 3, 4]], ['', [5, 6, 7, 8, 9, 10, 11]], ['', [12, 13, 14, 15, 16, 17, 18]], ['', [19, 20, 21, 22, 23, 24, 25]], ['', [26, 27, 28, 29, 30, 31, null]]]; const shubh = [8, 11, 14, 16, 21, 22, 24]; return (
October 2026
आश्विन – कार्तिक
{['S', 'M', 'T', 'W', 'T', 'F', 'S'].map((d, i) =>
{d}
)} {days.flatMap(([, w]) => w).map((d, i) => { const sel = d === 14, sh = shubh.includes(d), past = d && d < 8; return (
{d &&
{d}
} {sh && !sel && }
); })}
Shubh muhurat Today
Muhurat on Wed, 14 Oct
Pushya yog
{[['07:10 – 09:40', 'Shubh · Best', 1], ['11:45 – 12:31', 'Abhijit muhurat'], ['16:20 – 17:50', 'Labh'], ['13:30 – 15:00', 'Rahu kaal · avoid', 0, 1]].map(([t, s, on, bad]) => (
{t}
{on && }{s}
))}
Muhurats are calculated for Dehradun. Your pandit may suggest a refinement.
); } function SankalpScreen() { return (
Sankalp for
+ Add member
{[['AK', 'Ashish Kanyal', 'Self · Kashyap gotra', true, 'saffron'], ['PK', 'Priya Kanyal', 'Spouse · Rohini nakshatra', true, 'teal'], ['AK', 'Aarav Kanyal', 'Son', false, 'gray']].map(([i, n, s, on, t], k) => (
{n}
{s}
))}
Special intention (optional)
For peace and prosperity in our new home at Sahastradhara Road.
Puja address
Change
New home
Flat 402, Shivalik Heights, Sahastradhara Road, Dehradun 248001
Samagri
Pandit Ji brings it
32 items, verified & fresh
+₹1,138
I'll arrange it
We'll share the list on WhatsApp
₹0
); } function ReviewScreen() { return (
Grih Pravesh Puja
Uttam packageगृह प्रवेश पूजा
{[['cal', 'Wed, 14 Oct 2026', '07:10 AM · Shubh muhurat · 2.5 hr'], ['pin', 'Shivalik Heights, Flat 402', 'Sahastradhara Road, Dehradun'], ['users', 'Sankalp for 2', 'Ashish & Priya Kanyal · Kashyap gotra'], ['user', 'Pandit Ji auto-assigned', 'Name & photo shared 24 hrs before']].map(([n, a, b]) => (
{a}
{b}
))}
NEWHOME500 applied
You save ₹500 on this puja
Remove
Bill details
{[['Puja · Uttam', '₹7,100'], ['Samagri kit (32 items)', '₹1,138'], ['Pandit travel', ₹150FREE], ['Coupon NEWHOME500', −₹500]].map(([a, b]) => ( {a}{b} ))} To pay₹7,738
Free reschedule up to 24 hrs before. Full refund if cancelled 48 hrs before the muhurat.
); } function PaymentScreen() { return (
Secure} />
Grih Pravesh Puja · 14 Oct
₹7,738
Details
PAY BY UPI
{[['GPay', 'Google Pay', true, '#4285F4'], ['Pe', 'PhonePe', false, '#5F259F'], ['Ptm', 'Paytm', false, '#00BAF2'], ['+', 'Pay with UPI ID', false, JP.teal]].map(([i, n, on, c], k) => (
{i}
{n}
))}
MORE WAYS TO PAY
{[['card', 'Credit / Debit card', 'Visa ending 4417 saved'], ['wallet', 'JIPANDITJI wallet', 'Balance ₹250'], ['clock', 'Pay ₹1,000 now, rest after puja', 'Balance in cash or UPI to Pandit Ji']].map(([n, a, b], k) => (
{a}
{b}
))}
Pay ₹7,738 with Google Pay ); } function SuccessScreen() { return (
{/* marigold confetti */} {[[40, 120, 10, JP.saffron], [320, 100, 8, JP.kumkum], [80, 260, 6, JP.gold], [300, 250, 11, JP.saffron], [190, 80, 7, JP.gold], [350, 190, 6, JP.kumkum], [30, 200, 8, '#F4B13E']].map(([x, y, s, c], i) => ( ))}
शुभमस्तु
Your puja is booked
Confirmation sent on WhatsApp. Pandit Ji's name and number will be shared 24 hrs before the muhurat.
{[['Booking ID', 'JP-B-58213'], ['Puja', 'Grih Pravesh · Uttam'], ['Muhurat', 'Wed, 14 Oct · 07:10 AM'], ['Amount paid', '₹7,738']].map(([a, b]) => ( {a}{b} ))}
Add to calendar
Share invite
Track booking Back to home
); } function BookingTrackScreen() { return (
} />
Sun, 11 Oct 2026
Pandit Ji arriving in 18 min
{/* map placeholder */}
Pt. Rameshwar Shastri
4.9 · Hindi, Sanskrit
Share this code with Pandit Ji to begin
4821
{[['Booked & paid', '5 Oct, 6:42 PM', 2], ['Pandit Ji assigned', '7 Oct, 11:16 AM', 2], ['Samagri packed & with Pandit Ji', 'Today, 8:10 AM', 2], ['Pandit Ji on the way', '18 min away', 1], ['Puja performed', '', 0]].map(([a, b, st], i, arr) => ( {i < arr.length - 1 &&
}
{st === 2 && }{st === 1 && }
{a}
{b &&
{b}
}
))} RescheduleCancel ); } Object.assign(window, { PujaListScreen, PujaDetailScreen, MuhuratScreen, SankalpScreen, ReviewScreen, PaymentScreen, SuccessScreen, BookingTrackScreen });