How sarowar-islam/resqhub_frontend works
ResQHub is a frontend volunteer-coordination experience for disaster response. Users enter through a landing page, select or authenticate into a role-specific portal, and use that portal to view or coordinate help requests, missions, resources, and locations. The implementation shown is a React UI backed by in-memory session state and mock data; no persistent backend or live dispatch service is evidenced. The graph preserves the documented coordination scope while limiting relationships to source-index references and excerpted calls.
Main entry points: PortalLayout.tsx Portal Shell · App.tsx View Router · mockData.ts Response Mock Data · MapView.tsx Operations Map
Components 14
Entry and Identity
- View Router
src/app/App.tsx - Public Landing
src/pages/Landing.tsx - Role Authentication
src/pages/Auth.tsx - Session State
src/context/SessionContext.tsx
Response Portals
- Victim Portal
src/pages/VictimPortal.tsx - Volunteer Portal
src/pages/VolunteerPortal.tsx - NGO Portal
src/pages/NGOPortal.tsx - Admin Portal
src/pages/AdminPortal.tsx
Shared Experience
- Portal Shell
src/components/PortalLayout.tsx - Operations Map
src/components/MapView.tsx - Response Assistant
src/components/AIChat.tsx - Email Verification Banner
src/components/VerifyEmailBanner.tsx
Response Data
- Response Mock Data
src/data/mockData.ts
Other components
- People in need, volunteers, partners
Connections 28
- People in need, volunteers, partners → Public Landing: opens
README.md - View Router → Public Landing: routes to
src/app/App.tsx - View Router → Role Authentication: routes to
src/app/App.tsx - View Router → Victim Portal: routes to
src/app/App.tsx - View Router → Volunteer Portal: routes to
src/app/App.tsx - View Router → NGO Portal: routes to
src/app/App.tsx - View Router → Admin Portal: routes to
src/app/App.tsx - View Router → Session State: reads and resets
src/app/App.tsx - Public Landing → Role Authentication: navigates to
src/pages/Landing.tsx - Public Landing → Operations Map: renders
src/pages/Landing.tsx - Victim Portal → Portal Shell: uses
src/pages/VictimPortal.tsx - Volunteer Portal → Portal Shell: uses
src/pages/VolunteerPortal.tsx - NGO Portal → Portal Shell: uses
src/pages/NGOPortal.tsx - Admin Portal → Portal Shell: uses
src/pages/AdminPortal.tsx - Victim Portal → Operations Map: renders
src/pages/VictimPortal.tsx - Volunteer Portal → Operations Map: renders
src/pages/VolunteerPortal.tsx - Admin Portal → Operations Map: renders
src/pages/AdminPortal.tsx - Victim Portal → Response Mock Data: reads requests
src/pages/VictimPortal.tsx - Volunteer Portal → Response Mock Data: reads data
src/pages/VolunteerPortal.tsx - NGO Portal → Response Mock Data: reads data
src/pages/NGOPortal.tsx - Admin Portal → Response Mock Data: reads data
src/pages/AdminPortal.tsx - Portal Shell → Response Assistant: renders
src/components/PortalLayout.tsx - Portal Shell → Email Verification Banner: renders
src/components/PortalLayout.tsx - Portal Shell → Session State: reads session
src/components/PortalLayout.tsx - Portal Shell → Response Mock Data: reads notifications
src/components/PortalLayout.tsx - Response Assistant → Response Mock Data: reads responses
src/components/AIChat.tsx - Operations Map → Response Mock Data: uses marker types
src/components/MapView.tsx - Email Verification Banner → Session State: reads session
src/components/VerifyEmailBanner.tsx