# umaramir18747-ghub/amijee architecture

> Architecture diagram of the GitHub repository umaramir18747-ghub/amijee, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/umaramir18747-ghub/amijee
- Repository: https://github.com/umaramir18747-ghub/amijee

## Overview

This is a browser-based institute management portal with separate manager, teacher and student experiences. The principal workflow is role-based sign-in, credential and account-status checking against browser storage, then navigation to the matching portal. Managers handle enrollment, classes, attendance and fees; teachers manage teaching, attendance and assessments; students view learning and account records. Shared header/sidebar behavior is implemented in components.js. The tree and sampled JavaScript support these capabilities, but do not establish how most page actions persist or communicate.

Main entry points: [`index.js`](https://github.com/umaramir18747-ghub/amijee/blob/main/index.js) (Login logic), [`admin/index.html`](https://github.com/umaramir18747-ghub/amijee/blob/main/admin/index.html) (Manager dashboard), [`teacher/teacher-dashboard.html`](https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/teacher-dashboard.html) (Teacher dashboard), [`student/student-dashboard.html`](https://github.com/umaramir18747-ghub/amijee/blob/main/student/student-dashboard.html) (Student dashboard)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_access["Access"]
  node_signin["Role sign-in<br/>[index.html]"]
  node_auth["Login logic<br/>[index.js]"]
  node_browser_store[("Browser storage")]
end

subgraph group_manager["Manager operations"]
  node_manager_home["Manager dashboard<br/>[index.html]"]
  node_enrollment["Enrollment"]
  node_class_ops["Class operations<br/>[make-class.html]"]
  node_attendance_admin["Attendance analysis"]
  node_fees["Fee management<br/>[fee-analysis.html]"]
  node_manager_academics["Academic records"]
end

subgraph group_teacher["Teacher portal"]
  node_teacher_home["Teacher dashboard"]
  node_teaching["Teaching materials"]
  node_teacher_attendance["Attendance marking"]
  node_assessments["Assessments<br/>[mark-exams.html]"]
end

subgraph group_student["Student portal"]
  node_student_home["Student dashboard"]
  node_student_learning["Subjects and work<br/>[my-subjects.html]"]
  node_student_records["Student records"]
end

subgraph group_shared["Shared interface"]
  node_shared_ui["Navigation behavior<br/>[components.js]"]
end

node_user(("Portal user"))

node_user -->|"opens"| node_signin
node_signin -->|"submits credentials"| node_auth
node_auth -->|"reads accounts"| node_browser_store
node_auth -->|"writes session"| node_browser_store
node_auth -->|"redirects manager"| node_manager_home
node_auth -->|"redirects teacher"| node_teacher_home
node_auth -->|"redirects student"| node_student_home
node_manager_home --> node_enrollment
node_manager_home --> node_class_ops
node_manager_home --> node_attendance_admin
node_manager_home --> node_fees
node_manager_home --> node_manager_academics
node_teacher_home --> node_teaching
node_teacher_home --> node_teacher_attendance
node_teacher_home --> node_assessments
node_student_home --> node_student_learning
node_student_home --> node_student_records

click node_signin "https://github.com/umaramir18747-ghub/amijee/blob/main/index.html"
click node_auth "https://github.com/umaramir18747-ghub/amijee/blob/main/index.js"
click node_manager_home "https://github.com/umaramir18747-ghub/amijee/blob/main/admin/index.html"
click node_enrollment "https://github.com/umaramir18747-ghub/amijee/blob/main/admin/enroll-student.html"
click node_class_ops "https://github.com/umaramir18747-ghub/amijee/blob/main/admin/make-class.html"
click node_attendance_admin "https://github.com/umaramir18747-ghub/amijee/blob/main/admin/s_attendance-analysis.html"
click node_fees "https://github.com/umaramir18747-ghub/amijee/blob/main/admin/fee-analysis.html"
click node_manager_academics "https://github.com/umaramir18747-ghub/amijee/blob/main/admin/assign-subjects.html"
click node_teacher_home "https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/teacher-dashboard.html"
click node_teaching "https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/teacher-assignments.html"
click node_teacher_attendance "https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/mark-attendance.html"
click node_assessments "https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/mark-exams.html"
click node_student_home "https://github.com/umaramir18747-ghub/amijee/blob/main/student/student-dashboard.html"
click node_student_learning "https://github.com/umaramir18747-ghub/amijee/blob/main/student/my-subjects.html"
click node_student_records "https://github.com/umaramir18747-ghub/amijee/blob/main/student/view-attendance.html"
click node_shared_ui "https://github.com/umaramir18747-ghub/amijee/blob/main/components.js"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_signin,node_auth,node_browser_store,node_user toneBlue
class node_manager_home,node_enrollment,node_class_ops,node_attendance_admin,node_fees,node_manager_academics toneAmber
class node_teacher_home,node_teaching,node_teacher_attendance,node_assessments toneMint
class node_student_home,node_student_learning,node_student_records toneRose
class node_shared_ui toneIndigo
```

## Components

### Access

- [Role sign-in](https://github.com/umaramir18747-ghub/amijee/blob/main/index.html): `index.html`
- [Login logic](https://github.com/umaramir18747-ghub/amijee/blob/main/index.js): `index.js`
- **Browser storage**

### Manager operations

- [Manager dashboard](https://github.com/umaramir18747-ghub/amijee/blob/main/admin/index.html): `admin/index.html`
- [Enrollment](https://github.com/umaramir18747-ghub/amijee/blob/main/admin/enroll-student.html): `admin/enroll-student.html`
- [Class operations](https://github.com/umaramir18747-ghub/amijee/blob/main/admin/make-class.html): `admin/make-class.html`
- [Attendance analysis](https://github.com/umaramir18747-ghub/amijee/blob/main/admin/s_attendance-analysis.html): `admin/s_attendance-analysis.html`
- [Fee management](https://github.com/umaramir18747-ghub/amijee/blob/main/admin/fee-analysis.html): `admin/fee-analysis.html`
- [Academic records](https://github.com/umaramir18747-ghub/amijee/blob/main/admin/assign-subjects.html): `admin/assign-subjects.html`

### Teacher portal

- [Teacher dashboard](https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/teacher-dashboard.html): `teacher/teacher-dashboard.html`
- [Teaching materials](https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/teacher-assignments.html): `teacher/teacher-assignments.html`
- [Attendance marking](https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/mark-attendance.html): `teacher/mark-attendance.html`
- [Assessments](https://github.com/umaramir18747-ghub/amijee/blob/main/teacher/mark-exams.html): `teacher/mark-exams.html`

### Student portal

- [Student dashboard](https://github.com/umaramir18747-ghub/amijee/blob/main/student/student-dashboard.html): `student/student-dashboard.html`
- [Subjects and work](https://github.com/umaramir18747-ghub/amijee/blob/main/student/my-subjects.html): `student/my-subjects.html`
- [Student records](https://github.com/umaramir18747-ghub/amijee/blob/main/student/view-attendance.html): `student/view-attendance.html`

### Shared interface

- [Navigation behavior](https://github.com/umaramir18747-ghub/amijee/blob/main/components.js): `components.js`

### Other components

- **Portal user**

## Connections

- Portal user → Role sign-in: opens
- Role sign-in → Login logic: submits credentials
- Login logic → Browser storage: reads accounts
- Login logic → Browser storage: writes session
- Login logic → Manager dashboard: redirects manager
- Login logic → Teacher dashboard: redirects teacher
- Login logic → Student dashboard: redirects student
- Manager dashboard → Enrollment
- Manager dashboard → Class operations
- Manager dashboard → Attendance analysis
- Manager dashboard → Fee management
- Manager dashboard → Academic records
- Teacher dashboard → Teaching materials
- Teacher dashboard → Attendance marking
- Teacher dashboard → Assessments
- Student dashboard → Subjects and work
- Student dashboard → Student records
