# sonalikas263-ux/neet-cbt-mock-test architecture

> Architecture diagram of the GitHub repository sonalikas263-ux/neet-cbt-mock-test, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/sonalikas263-ux/neet-cbt-mock-test
- Repository: https://github.com/sonalikas263-ux/neet-cbt-mock-test

## Overview

This is a browser-based NEET computer-based mock test. The supported workflow is student name entry, exam attempt, and result display: login.js saves the name and opens the instructions page; exam.js reads the name, runs a timed multiple-choice test, saves the score, and opens the result page; result.js reads and displays it. The tree and sampled scripts do not establish how instructions.html links to the exam or how pages load scripts, so those connections are omitted. README provides no further capability details.

Main entry points: [`JS/exam.js`](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/exam.js) (Exam engine), [`JS/login.js`](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/login.js) (Login handling), [`index.html`](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/index.html) (Name entry), [`result.html`](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/result.html) (Result page)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Entry"]
  node_login["Name entry<br/>[index.html]"]
  node_login_script["Login handling<br/>[login.js]"]
  node_instructions["Instructions<br/>[instructions.html]"]
  node_styles["Page styling<br/>[style.css]"]
end

subgraph group_test["Test"]
  node_exam_page["Exam page<br/>[exam.html]"]
  node_exam_logic["Exam engine<br/>[exam.js]"]
  node_questions["Question set<br/>[exam.js]"]
  node_storage[("Browser storage")]
end

subgraph group_outcome["Results"]
  node_result_page["Result page<br/>[result.html]"]
  node_result_logic["Result display<br/>[result.js]"]
end

node_student(("Student"))

node_student -->|"enters name"| node_login
node_login -->|"starts test"| node_login_script
node_login_script -->|"saves name"| node_storage
node_login_script -->|"redirects"| node_instructions
node_exam_page -->|"runs"| node_exam_logic
node_exam_logic -->|"reads name"| node_storage
node_exam_logic -->|"uses questions"| node_questions
node_exam_logic -->|"saves result"| node_storage
node_exam_logic -->|"redirects"| node_result_page
node_result_page -->|"runs"| node_result_logic
node_result_logic -->|"reads result"| node_storage

click node_login "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/index.html"
click node_login_script "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/login.js"
click node_instructions "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/instructions.html"
click node_exam_page "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/exam.html"
click node_exam_logic "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/exam.js"
click node_questions "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/exam.js"
click node_result_page "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/result.html"
click node_result_logic "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/result.js"
click node_styles "https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/CSS/style.css"

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_login,node_login_script,node_instructions,node_styles toneBlue
class node_exam_page,node_exam_logic,node_questions,node_storage toneAmber
class node_result_page,node_result_logic toneMint
class node_student toneIndigo
```

## Components

### Entry

- [Name entry](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/index.html): `index.html`
- [Login handling](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/login.js): `JS/login.js`
- [Instructions](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/instructions.html): `instructions.html`
- [Page styling](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/CSS/style.css): `CSS/style.css`

### Test

- [Exam page](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/exam.html): `exam.html`
- [Exam engine](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/exam.js): `JS/exam.js`
- [Question set](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/exam.js): `JS/exam.js`
- **Browser storage**

### Results

- [Result page](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/result.html): `result.html`
- [Result display](https://github.com/sonalikas263-ux/neet-cbt-mock-test/blob/main/JS/result.js): `JS/result.js`

### Other components

- **Student**

## Connections

- Student → Name entry: enters name
- Name entry → Login handling: starts test
- Login handling → Browser storage: saves name
- Login handling → Instructions: redirects
- Exam page → Exam engine: runs
- Exam engine → Browser storage: reads name
- Exam engine → Question set: uses questions
- Exam engine → Browser storage: saves result
- Exam engine → Result page: redirects
- Result page → Result display: runs
- Result display → Browser storage: reads result
