ASTROAYODHYA.COM User Dashboard — Complete Page Document Routes: /dashboard | /dashboard/kundali | /dashboard/orders | /dashboard/settings | Doc v1.0 Table of Contents Section 0: Dashboard Overview & Navigation Section 1: Dashboard Home (/dashboard) — Main Overview Section 2: Today's Section — Daily Personalized Card Section 3: My Kundali Section (/dashboard/kundali) Section 4: My Forecasts Section 5: My Consultations Section 6: My Pujas Section 7: My Orders (Shop) Section 8: My Membership Section 9: Foundation Contribution Tracker Section 10:Saved Items & Bookmarks Section 11:Notification Inbox Section 12:Settings (/dashboard/settings) Section 13:Profile Management Section 14:Gamification & Badges Section 15:Mobile Dashboard Section 16:Performance & Caching Appendix:Components, APIs, DB Schema SECTION 0 — Dashboard Overview & Navigation 0.1 Dashboard Purpose Dashboard ek logged-in user ka ghar hai AstroAyodhya pe. Yahan se woh apni kundali dekh sakta hai, forecasts download kar sakta hai, pujas track kar sakta hai, orders manage kar sakta hai, aur apna account manage kar sakta hai. Sab ek jagah. 0.2 Navigation Structure 0.3 Left Sidebar Nav Items SECTION 1 — Dashboard Home — Main Overview 1.1 Personalized Greeting Heading: "Namaste [Name] Ji!" Sub: "Aaj [Weekday], [DD Month]. Aapki Rashi: [Rashi Name]. Mahadasha: [Planet] — [Start] to [End]." Time-based greeting: 1.2 Quick Stats Row — 4 Cards 1.3 Recent Activity Feed Chronological list of recent activities — max 10 items: 1.4 Right Sidebar — Quick Actions & Upsell SECTION 2 — Today's Section — Daily Personalized Card 2.1 Today's Card Content 2.2 Upcoming Events Widget Below today's card — 'Aane Wale Events': Upcoming puja: 'Aapki [Puja Name] — [date] ko. [X din baaki]' → link Upcoming consultation: 'Acharya [Name] se call — [date] [time]. [X ghante baaki]' → join link Membership renewal: 'Membership renew hogi — [date]. ₹[amount]' → manage link Prasad delivery: 'Aapka prasad [date] tak ayega — track karo' → tracking SECTION 3 — My Kundali (/dashboard/kundali) 3.1 Kundali Page Layout 3.2 Multiple Charts Management Users can save multiple kundalis — themselves, spouse, children, parents: 3.3 Kundali Share Feature SECTION 4 — My Forecasts 4.1 Forecasts List Page (/dashboard/forecasts) 4.2 Forecast Detail Card Each forecast in list shows expanded card on click: Cover thumbnail + plan name + date range (e.g. 2025-2028) Acharya name + photo who reviewed it 'Brahman Verified ✓' badge Reading progress bar — percentage Last read: 'Kal padha tha' / '3 din pehle' Quick chapter links — jump to Career / Finance / etc. SECTION 5 — My Consultations 5.1 Consultations Page (/dashboard/consultations) 5.2 Consultation Notes Display Each completed consultation has a notes section: Acharya's typed notes from session — formatted nicely Any products/remedies recommended during call — with shop links 'Dobara Book Karo' — pre-selects same Acharya for next booking Review prompt if not reviewed: '1 minute mein review do' SECTION 6 — My Pujas 6.1 Pujas Page (/dashboard/pujas) 6.2 GPS Certificate Display For each completed puja — certificate card: Certificate thumbnail — AstroAyodhya branded QR code visible — 'Scan to verify' Acharya name + GPS location + date + time 'Download Certificate' — full PDF download 'Share Certificate' — WhatsApp share with image SECTION 7 — My Orders (Shop) 7.1 Orders Page (/dashboard/orders) 7.2 Order Tracking Visual Step-by-step visual timeline: Order Placed ✓ → [date] Confirmed ✓ → [date] Energized in Ayodhya ✓ → [date] (unique to AstroAyodhya) Shipped ✓ → [courier] [tracking number] Out for Delivery → [today's date if applicable] Delivered ✓ → [date] NOTE: 'Energized in Ayodhya' step is unique to AstroAyodhya — no other platform shows this. Keep it. SECTION 8 — My Membership 8.1 Membership Card on Dashboard Prominent card on dashboard home + dedicated section in sidebar: SECTION 9 — Foundation Contribution Tracker 9.1 Foundation Section on Dashboard SECTION 10 — Saved Items & Bookmarks 10.1 Saved Items Page (/dashboard/saved) 10.2 Wishlist / Saved Products SECTION 11 — Notification Inbox 11.1 Notifications Page (/dashboard/notifications) 11.2 Notification Types SECTION 12 — Settings (/dashboard/settings) 12.1 Settings Page Layout Tabbed interface: Profile | Account | Notifications | Privacy | Billing 12.2 Profile Tab 12.3 Account Tab 12.4 Notifications Tab Same as /membership/manage notification preferences + additional platform notifications: Email preferences: Order updates | Newsletter | Promotions — on/off Push notifications: Puja alerts | Consultation reminders — on/off WhatsApp: Daily rashifal | Transit alerts | Puja updates — on/off SMS: Only for urgent — payment failures, delivery updates — always on 12.5 Privacy Tab 12.6 Billing Tab SECTION 13 — Profile Management 13.1 User Profile Page (/dashboard/profile) SECTION 14 — Gamification & Badges 14.1 Badge System 14.2 Badge Display On profile page — all earned badges displayed as icon grid Hover/tap on badge → tooltip explaining what it is and how earned Next badge hint: 'Aap Foundation Hero se ₹X door hain' — motivation to earn New badge notification: popup when badge earned + celebratory animation SECTION 15 — Mobile Dashboard 15.1 Mobile Navigation Bottom tab bar — 5 tabs (most important): NOTE: 'More' menu in Profile tab → less-used features like Saved Items, Foundation details. 15.2 Mobile-Specific Dashboard Features SECTION 16 — Performance & Caching 16.1 Page Performance Targets 16.2 Auth & Security APPENDIX — Components, APIs & DB Schema A.1 React Components A.2 API Endpoints A.3 Users DB Table — Key Columns A.4 Next Pages in Document Queue AstroAyodhya.com — Dashboard Page Document v1.0 Routes: /dashboard | /dashboard/kundali | /dashboard/orders | /dashboard/settings 50% profit → larawarefoundation.com | A Laraware Group Initiative Pages Covered | 5 routes: /dashboard (home), /dashboard/kundali, /dashboard/orders, /dashboard/pujas, /dashboard/settings Auth | All pages require login. Redirect to /login if not authenticated. Render Type | All SSR — user-specific data. Redis cache where possible. Purpose | User's personal control center — everything in one place Key Goal | Increase engagement + cross-sell + retain members SEO | No-index — private user page. No SEO needed. Design | Clean dashboard UI. Left sidebar nav + right content area. Mobile: bottom tab nav. Engagement Goal Dashboard daily return visits encourage karta hai — 'Aaj ka rashifal', 'Kal ki puja hai', 'Mera forecast ready hai'. Yeh triggers users ko roz site pe laate hain aur engagement maintain karte hain. Left Sidebar (desktop) | Logo + user avatar + nav items — fixed, always visible Top bar | Search + notifications bell + settings gear + user name Bottom Tab Bar (mobile) | Home | Kundali | Orders | Inbox | Profile — 5 tabs URL structure | All under /dashboard/* — auth middleware on entire subtree 🏠 Dashboard | Home overview — /dashboard 🔮 Meri Kundali | Birth chart + doshas — /dashboard/kundali 📄 Mere Forecasts | All purchased forecasts — /dashboard/forecasts 👥 Consultations | Past + upcoming calls — /dashboard/consultations 🪔 Mere Pujas | Puja bookings + certificates — /dashboard/pujas 🛍️ Mere Orders | Shop order history — /dashboard/orders ⭐ Membership | Plan status + manage — /membership/manage 🌱 Foundation | Contribution tracker — /dashboard/foundation 🔖 Saved Items | Bookmarked charts, products — /dashboard/saved 🔔 Notifications | All alerts inbox — /dashboard/notifications ⚙️ Settings | Account + preferences — /dashboard/settings Design Spec Card-based layout. Top section: personalized greeting + today's card. Middle: quick stats row. Below: recent activity widgets. Right sidebar: upsell + quick links. 4 AM – 12 PM | 'Suprabhat, [Name] Ji!' 12 PM – 4 PM | 'Namaskar, [Name] Ji!' 4 PM – 8 PM | 'Shubh Sandhya, [Name] Ji!' 8 PM – 4 AM | 'Shubh Ratri, [Name] Ji!' Card | Value | Label | Color Kundali | Saved ✓ | Meri Kundali | Saffron Forecast | [N] Active | Mere Forecasts | Gold Foundation | ₹[X] | Mera Yogdaan | Green Membership | [Plan] Active / Not Member | Membership Status | Purple or grey Forecast purchased | '3-Saal Forecast kharida — [date]' → /my-forecast/[id] Puja completed | 'Kaal Sarp Puja complete — certificate ready' → /dashboard/pujas Order shipped | 'Moonga ring ship ho gayi — track karo' → /dashboard/orders WhatsApp connected | 'WhatsApp connected — kal subah rashifal aayega' Consultation done | 'Acharya [Name] se baat ki — [date]' → notes link Review given | 'Aapne [product] ko review diya' Quick links box | 'Kya karna chahte hain?' — 4 quick CTA buttons: New Forecast | Book Puja | Acharya Se Baat | Shop Upsell box | Contextual upsell based on user state — if no forecast: 'Forecast lo'; if no membership: 'Member bano'; if member: 'Upgrade karo' Today's tip | Aaj ka ek practical Jyotish tip — changes daily — drives return visits Highest Engagement Element Yeh card har roz badlata hai. Users iske liye dashboard kholte hain. Isme aaj ka rashifal + shubh samay + rahu kaal + ek personal tip hota hai. Date + Tithi | [Weekday], [DD Month] — [Tithi], [Paksha] Rashi message | 'Aaj aapke liye: [1 key sentence from today's rashifal]' Shubh Samay | Today's best time — '[X AM – Y AM]' Rahu Kaal | Today's avoid time — '[X PM – Y PM] — avoid new work' Transit alert | If active: 'SPECIAL: [Planet] transit alert aapke liye' — Premium members Aaj ka upay | 'Aaj ka upay: [1 practical tip]' — Members only Day score dots | 5 dots: Career | Finance | Health | Love | Luck — filled/empty Full rashifal | 'Poori rashifal dekho →' → /rashifal/[rashi] Core Feature Yeh page user ki kundali ka permanent home hai. Yahan se woh apni chart dekh sakta hai, dobara download kar sakta hai, ya share kar sakta hai. Chart display | D1 Rashi chart — full interactive SVG (same as /kundali page) Birth details | Name | DOB | TOB | POB — with edit option Key data cards | Lagna | Rashi | Nakshatra | Current Mahadasha | Current Antardasha Action buttons | 'Chart Share Karo' | 'PDF Download' | 'Update Birth Details' Dosha summary | Quick dosha status — Mangal / Kaal Sarp / Nadi / etc. Multiple charts | If user has saved multiple people's charts — family members etc. Add new chart | 'Parivar ki Kundali Banao' → opens new kundali form Chart list | Dropdown or tabs: 'Meri Kundali | Patni/Pati | Beta/Beti | Mummy | Papa' Add chart CTA | 'Nayi Kundali Banao' button — opens birth data form Max charts | Free: 1 chart. Member: 5 charts. VIP: Unlimited. Chart actions | View | Share | Rename | Delete per chart Default chart | One chart marked as 'Primary' — used for rashifal, recommendations Share URL | /kundali/share/[public-token] — read-only view for others Share options | Copy link | WhatsApp share | Download image (social card) Social card | Auto-generated: kundali chart + name + key details — beautiful saffron design Privacy | Shared link shows chart only — no personal contact details Expiry | Share links valid 30 days by default. User can extend or revoke. List view | All purchased forecasts — newest first Each item | Plan name | Date purchased | Status badge | Read progress | Download Status badges | PROCESSING | READY | READ (X%) | EXPIRED Read progress | 'Aapne 45% padha' — shown on each report card Actions | 'Padho' → opens reader | 'Download PDF' | 'Share' Upsell | If no forecast: 'Apni pehli forecast lo — ₹99 se shuru' card Upgrade prompt | If 1-yr forecast: 'Agle 2 saal ke liye upgrade karo' Upcoming tab | Future booked sessions — join link active 10 min before Past tab | Completed sessions — notes + recording (if any) Each item | Acharya photo + name | Date + time | Duration | Status | Actions Status badges | UPCOMING | IN PROGRESS | COMPLETED | CANCELLED | NO SHOW Upcoming actions | Join Session | Reschedule | Cancel Past actions | View Notes | Download Recording | Book Again | Write Review VIP counter | VIP members: 'Is mahine ki call: [Used/Available]' — prominent Upcoming tab | Scheduled pujas — live link, countdown timer Past tab | Completed pujas — certificate + video + prasad tracking Each item | Puja name + type | Date + time | Acharya | Status | Actions Upcoming actions | Watch Live | Reschedule | Cancel Live status | When puja is in progress: pulsing red dot + 'LIVE — Join Now' button Past actions | Certificate Download | Video Watch | Track Prasad | Review Prasad tracker | Courier + tracking number + estimated delivery + current status Order list | All shop orders — newest first Each order | Order ID | Products | Amount | Date | Status | Actions Status badges | PLACED | CONFIRMED | SHIPPED | DELIVERED | RETURNED | REFUNDED Actions | Track Order | Download Invoice | Return/Replace | Review Product Tracking | Inline tracking card — courier name + tracking ID + map timeline Invoice | GST invoice PDF — download available for all delivered orders Reorder | 'Wahi Dobara Lo' button — adds same items to cart Active member card | Plan badge (Basic/Premium/VIP) + renewal date + quick stats Non-member card | 'Member nahi hain — WhatsApp pe rashifal paane ke liye join karo' + plan CTA WhatsApp status | Connected number shown. 'Change' option. Usage this month | WhatsApp messages received | Acharya chats used | Calls used (VIP) Quick actions | 'Manage' → /membership/manage | 'Upgrade' | 'Cancel' Emotional Engagement Yeh section user ko ek khushi ka ahsaas deta hai — 'Maine itna contribute kiya.' Yeh loyalty driver hai. Total contributed | Large green number: 'Aapka Kul Yogdaan: ≈₹[X]' Breakdown | Table: Each purchase + date + estimated contribution Programs helped | Visual: icons of all 8 programs with checkmark if funded by user Donor badge | Foundation Friend / Champion / Hero — based on total (see Section 14) Share CTA | 'Apna Yogdaan Share Karo' → WhatsApp card generation Donate more | 'Seedha Donate Karo' → larawarefoundation.com/donate/ Foundation Card Copy Aapne ab tak AstroAyodhya ke zariye Laraware Welfare Foundation ko ≈₹[X] contribute kiya hai. Yeh [program names] programs mein gaya. Shukriya — aap in logon ke liye kuch matlab rakhte hain. → larawarefoundation.com Saved kundali sections | Specific chapters or insights user bookmarked from /my-forecast Saved rashifal | User can save specific rashifal predictions for reference Saved products | Shop wishlist — products user liked but didn't buy Saved Acharyas | Favourite Acharyas — quick booking access Saved pujas | Pujas user wants to do — reminder option Notes | Personal notes user added anywhere on platform Grid display | 3-col product cards — same as shop Actions | Add to Cart | Remove | Share via WhatsApp Price alerts | 'Price ghati to batao' toggle — notify if product price drops Empty state | 'Koi saved item nahi — shop mein jaao aur dil ko jo pasand aaye save karo' All tab | All notifications — newest first. Unread in bold. Unread badge | Red dot on bell icon in nav — count of unread Categories | Filter: Rashifal | Puja | Orders | Membership | Foundation | System Each notification | Icon + title + description + timestamp + action CTA Mark all read | 'Sabhi padhe mark karo' button Delete | Swipe to delete on mobile. 'X' on desktop. Type | Icon | When | Action Rashifal ready | 🌟 | Daily 7 AM | View Rashifal → Transit alert | 🪐 | On major transit | View Details → Puja starting soon | 🪔 | 1 hr before | Join Now → Puja completed | ✅ | After puja | View Certificate → Prasad shipped | 📦 | When dispatched | Track → Forecast ready | 📄 | When PDF generated | Read Now → Consultation reminder | 👥 | 1 hr before call | Join Call → Membership renewal | ⭐ | D-2 before billing | Manage → New message from Acharya | 💬 | When Acharya replies | View → Order delivered | 🏠 | On delivery | Review Product → Foundation monthly | 🌱 | End of month | See Impact → Name | Edit full name Profile photo | Upload / change photo — circular crop Date of birth | Edit DOB — affects kundali Time of birth | Edit TOB — affects kundali precision Place of birth | Edit POB — Google Places Gender | Optional Language | App language preference — 20 options Gotra | Optional — used in puja sankalp Email address | Current email — verify new email if changed Phone number | Current phone — verify new number via OTP Password | 'Change Password' — current + new + confirm WhatsApp | Current connected number — edit option Google OAuth | Connect/disconnect Google account Delete account | 'Apna account delete karo' — at bottom, dangerous action Kundali visibility | Public (shareable) | Private (only me) Data download | 'Apna data download karo' — GDPR/DPDP compliance — JSON export Data deletion | Delete specific data types — kundali | orders | reviews Cookie preferences | Essential | Analytics | Marketing — toggle Saved payment methods | UPI IDs + cards on file — delete options Billing address | For GST invoices GST number | For business users — optional All invoices | Download all past GST invoices Subscription info | Link to /membership/manage Avatar | Circular 120px photo. Edit button. Name | Display name prominently Member since | 'AstroAyodhya Member since [Month Year]' Plan badge | Basic/Premium/VIP badge — or 'Free User' if no membership Donor badge | Foundation Friend/Champion/Hero if earned Activity stats | Forecasts bought | Pujas done | Consultations | Reviews given Foundation card | Total contributed — green card Achievements | Badges earned (see Section 14) Retention Tool Badges create emotional investment. 'I have earned Foundation Hero status' makes users less likely to leave. Simple but effective for long-term retention. Badge | How Earned | Visual | Effect Jyotish Shishya | Account created | Silver star | First step Kundali Wale | First kundali saved | Golden compass | Unlock personaliz. Pehla Forecast | First forecast purchased | Bronze scroll | — WhatsApp Wale | WhatsApp connected | Green WhatsApp | — Sadhak | Active member 3+ months | Purple lotus | 5% shop discount Acharya Ka Priya | 10+ consultations done | Gold Acharya face | Priority booking Foundation Friend | ₹500+ contributed to Foundation | Green leaf | — Foundation Champion | ₹2,000+ contributed | Green star | Blog mention Foundation Hero | ₹5,000+ contributed | Green trophy | Annual report mention Navaratna | Bought all 9 planets' gemstones | Gem rainbow | 20% combo discount Puja Devotee | 5+ pujas booked | Saffron flame | Early puja access Veteran Member | 12+ months continuous member | Gold crown | 1 free consultation Mobile Priority Dashboard on mobile must be FAST and focused. Most users check dashboard on mobile — mornings in bed, evenings on commute. Optimize for one-thumb operation. Home tab | Dashboard overview — today's card + quick stats Kundali tab | My kundali chart — quick access Orders tab | All purchases — forecasts + pujas + shop Inbox tab | Notifications — unread badge count Profile tab | Avatar + settings + badges Today's card | Full-width — first thing visible on opening dashboard Upcoming puja | Countdown timer widget — 'Kal subah 8 baje puja hai' Active live puja | Red 'LIVE' banner at top when puja is in progress Quick order track | 1-tap tracking from dashboard home — latest order status Swipe gestures | Swipe right on notifications to mark read. Swipe left to delete. Offline support | Today's card cached offline — viewable without internet Dashboard home | LCP < 2s. Most data from API but pre-fetched on login. Today's card | Cached in Redis — refreshed daily at 3AM. Instant load. Recent activity | Last 10 items cached in Redis 1hr. Fast append. Kundali chart | Cached in localStorage 7 days. No re-fetch unless DOB changed. Forecast list | API call — cache 15 minutes. Paginated: 5 per page. Notifications | Real-time via WebSocket (Laravel Echo + Pusher) OR polling every 2 min. Auth | Laravel Sanctum — token in httpOnly cookie Session | 24hr session. Refresh on activity. 30 days remember-me. 2FA | Optional TOTP — Google Authenticator. Enabled in /settings. Data access | User can only see their own data — enforced at API level Rate limiting | API rate: 300 req/min per user — prevents scraping Component | File Path | Notes DashboardLayout | app/dashboard/layout.tsx | Sidebar + topbar — all pages DashboardHome | app/dashboard/page.tsx | Overview — SSR DashboardKundali | app/dashboard/kundali/page.tsx | Chart management — SSR DashboardForecasts | app/dashboard/forecasts/page.tsx | Forecast list — SSR DashboardConsultations | app/dashboard/consultations/page.tsx | Call history — SSR DashboardPujas | app/dashboard/pujas/page.tsx | Puja tracking — SSR DashboardOrders | app/dashboard/orders/page.tsx | Shop orders — SSR DashboardNotifications | app/dashboard/notifications/page.tsx | Inbox — SSR DashboardSettings | app/dashboard/settings/page.tsx | Tabbed settings — SSR DashboardFoundation | app/dashboard/foundation/page.tsx | Contribution tracker SidebarNav | components/dashboard/SidebarNav.tsx | Left sidebar MobileTabBar | components/dashboard/MobileTabBar.tsx | Bottom 5-tab nav TodayCard | components/dashboard/TodayCard.tsx | Daily personalized card UpcomingEvents | components/dashboard/UpcomingEvents.tsx | Event countdown QuickStatsRow | components/dashboard/QuickStatsRow.tsx | 4 metric cards ActivityFeed | components/dashboard/ActivityFeed.tsx | Recent activity list KundaliManager | components/dashboard/KundaliManager.tsx | Multi-chart manager ForecastCard | components/dashboard/ForecastCard.tsx | Forecast with progress OrderTrackingTimeline | components/dashboard/OrderTrackingTimeline.tsx | Visual tracking FoundationTracker | components/dashboard/FoundationTracker.tsx | Green contribution card BadgeGrid | components/dashboard/BadgeGrid.tsx | All earned badges NotificationItem | components/dashboard/NotificationItem.tsx | Single notification row Endpoint | Method | Auth | Purpose GET /dashboard/summary | GET | Sanctum | Home overview — all counts + today's card GET /dashboard/today | GET | Sanctum | Today's personalized card (Redis cached 3AM) GET /dashboard/activity | GET | Sanctum | Recent activity feed — last 10 GET /dashboard/upcoming | GET | Sanctum | Upcoming events — pujas + consultations + billing GET /dashboard/kundalis | GET | Sanctum | All saved charts for user POST /dashboard/kundalis | POST | Sanctum | Save new family member chart GET /dashboard/forecasts | GET | Sanctum | Forecast list with progress GET /dashboard/consultations | GET | Sanctum | All consultation history GET /dashboard/pujas | GET | Sanctum | All puja bookings + status GET /dashboard/orders | GET | Sanctum | All shop orders GET /dashboard/notifications | GET | Sanctum | Notification inbox PATCH /dashboard/notifications/read | PATCH | Sanctum | Mark notifications read GET /dashboard/foundation | GET | Sanctum | User's Foundation contribution history GET /dashboard/badges | GET | Sanctum | All earned + available badges GET /dashboard/saved | GET | Sanctum | Saved items + wishlist id | UUID name | Full name email | Unique email phone | E.164 format password | Bcrypt hashed avatar_url | Cloudinary URL dob | Date of birth tob | Time of birth (nullable — 'Pata Nahi' option) pob_city | City name pob_lat | Latitude pob_lng | Longitude pob_tz | Timezone offset rashi | Moon sign (computed, cached) nakshatra | Birth nakshatra (computed, cached) lagna | Rising sign (computed, cached) lang_pref | Language preference — hi/en/hinglish etc. whatsapp_number | E.164 WhatsApp number (nullable) whatsapp_opted_in | Boolean membership_id | FK → subscriptions foundation_total | Cumulative Foundation contribution estimate (paise) badges | JSON array of earned badge IDs google_id | OAuth ID (nullable) email_verified_at | DateTime last_login_at | DateTime Next: /tools | Free tools hub — Mangal dosha checker, Sade Sati, Nakshatra finder, Muhurat calculator Then: /blog | Blog system — MDX, multilingual, Acharya authoring, SEO article structure Then: /about | About AstroAyodhya — Laraware Group, founding story, Ayodhya connection, media Then: /admin | Admin panel — complete spec for platform management