Skip to main content
Source snapshot: 13 October 2026. These pages describe the current implementation, including unfinished controls. See coverage and review notes.

Member dashboard

Host: [tenant].<ROOT_DOMAIN> · Route: /dashboard

Purpose and access

Show the signed-in citizen’s profile and community notices.Entry, public access, and redirect rules are described for this screen below.

Screen layout

The dashboard contains a greeting, Member Profile, Citizen Services & Certificates, Friday Notices & Announcements, and Community Events & Milad. Profile fields include name and optional phone/email; a static Active badge is displayed.

Fields and displayed information

This screen has no editable fields or filters in its rendered components.

Actions

Interaction sequence

Log in through OTP → open dashboard → inspect your profile and notices. Marriage (Nikah) NOC, Mahallu Release (NOC), and Welfare & Aid Request cards display action buttons.

States and rules

Those service buttons have no handlers or destinations and submit no applications. The Active badge is presentation text. Without a member session the route redirects to /login; failed announcements/events requests render empty panels. These feeds currently call operator-JWT-protected endpoints rather than member-auth endpoints.

Implementation references

Paths below are relative to the application repository. This is source-reviewed behavior, not a recorded browser test.
  • apps/web/src/app/sites/tenant/[tenant]/dashboard/page.tsx
Data and access helpers: apps/web/src/lib/member-session.ts, apps/web/src/lib/server-api.ts, apps/web/src/lib/tenants.ts, apps/web/src/lib/business-resources.ts

API behavior references

  • apps/api/src/member-auth/member-auth.controller.ts
  • apps/api/src/tenants/admins.controller.ts
  • apps/api/src/tenants/roles.controller.ts
  • apps/api/src/tenants/tenants.controller.ts
  • apps/api/src/announcements/announcements.controller.ts
  • apps/api/src/events/event-registrations.controller.ts
  • apps/api/src/events/events.controller.ts