Skip to main content

SKOLE-PROF — Profile & Caretaker Module

Module ID: SKOLE-PROF | Version: 1.0 | Status: Active
Products: Parent App

1. Overview

FieldValue
Module NameProfile & Caretaker
Module CodePROF
Business ValueGives parents a consolidated view of their family profile and their children’s academic profiles. The Caretaker sub-section manages other adults (grandparents, guardians) who may pick up the child.

2. Requirements

Functional Requirements (FR)

What the module must DO — actions, behaviors, and outcomes.
  • SKOLE-PROF-FR001: The module shall allow parents to view their own profile details (drawn from parent_details).
  • SKOLE-PROF-FR002: The module shall enable parents to view the full profile and academic details for each linked child.
  • SKOLE-PROF-FR003: The module shall allow parents to manage caretaker contacts for child pickup and emergency purposes.
  • SKOLE-PROF-FR004: The module shall retrieve profile data directly from the JWT authentication response where possible to avoid redundant API calls.

Non-Functional Requirements (NFR)

How well the module must do it — performance, security, and reliability.
  • SKOLE-PROF-NFR001: The module shall perform efficient profile rendering by consuming the existing authentication context.
  • SKOLE-PROF-NFR002: The module shall behave securely by ensuring parents can only access profile data linked to their authorized parent_id.

Constraints

Rules and boundaries — tech choices and platform restrictions.
  • C001: We must maintain data consistency between the students registry and the parent_details family mappings.
  • C002: We must use the skole_id to partition caretaker records to prevent cross-school data leaks.

3. UI Requirements

IDScreenRouteDescription
SKOLE-PROF-UI001ProfileScreen/profileParent own details — name, phone, email, designation, organization
SKOLE-PROF-UI002ChildProfileScreen/child-profileSelect + view each linked child (grade, DOB, blood group, ailments)
SKOLE-PROF-UI003StudentProfileScreen/child-selectionDetailed student info tab (enrollment date, status, address summary)
Components:
IDComponentProps
SKOLE-PROF-UC001ProfileAvatarname, initials
SKOLE-PROF-UC002InfoRowlabel, value
SKOLE-PROF-UC003ChildSwitcherchildren[], selected, onChange
SKOLE-PROF-UC004MedicalAlertBannerailment — shows if major_ailment present

Conditional Expressions

IDExpressionTriggerTrue ActionFalse Action
SKOLE-PROF-CE001children.length > 1Profile homeShow ChildSwitcherShow single child directly
SKOLE-PROF-CE002student.major_ailment !== nullChildProfileScreenShow MedicalAlertBannerHide
SKOLE-PROF-CE003student.blood_group !== nullProfile cardShow blood group chipHide