Skip to content

Commit e4d31fd

Browse files
authored
Merge pull request #3 from Shakeri-Lab/local
Local
2 parents eced143 + 63e331a commit e4d31fd

File tree

5 files changed

+242
-211
lines changed

5 files changed

+242
-211
lines changed

README.md

Lines changed: 52 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,52 @@
1-
# React + TypeScript + Vite
2-
3-
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
4-
5-
Currently, two official plugins are available:
6-
7-
- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) for Fast Refresh
8-
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
9-
10-
## Expanding the ESLint configuration
11-
12-
If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:
13-
14-
```js
15-
export default tseslint.config({
16-
extends: [
17-
// Remove ...tseslint.configs.recommended and replace with this
18-
...tseslint.configs.recommendedTypeChecked,
19-
// Alternatively, use this for stricter rules
20-
...tseslint.configs.strictTypeChecked,
21-
// Optionally, add this for stylistic rules
22-
...tseslint.configs.stylisticTypeChecked,
23-
],
24-
languageOptions: {
25-
// other options...
26-
parserOptions: {
27-
project: ['./tsconfig.node.json', './tsconfig.app.json'],
28-
tsconfigRootDir: import.meta.dirname,
29-
},
30-
},
31-
})
32-
```
33-
34-
You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules:
35-
36-
```js
37-
// eslint.config.js
38-
import reactX from 'eslint-plugin-react-x'
39-
import reactDom from 'eslint-plugin-react-dom'
40-
41-
export default tseslint.config({
42-
plugins: {
43-
// Add the react-x and react-dom plugins
44-
'react-x': reactX,
45-
'react-dom': reactDom,
46-
},
47-
rules: {
48-
// other rules...
49-
// Enable its recommended typescript rules
50-
...reactX.configs['recommended-typescript'].rules,
51-
...reactDom.configs.recommended.rules,
52-
},
53-
})
54-
```
1+
# How to Use the Diagnosis Grouping Tool
2+
3+
**Goal:** This tool is designed to help clinicians organize and group patient diagnoses based on clinical similarity and causal relationships. The goal is to create meaningful clusters of diagnoses that reflect underlying conditions or disease progression pathways.
4+
5+
---
6+
7+
**1. Getting Started**
8+
9+
* **Enter Computing ID:** Use your unique ID to start or resume your work. Use the same ID each time to load your saved progress.
10+
* **Click "Start / Load Session":** This loads your saved groups and the list of diagnoses to sort.
11+
12+
**2. The Screen**
13+
14+
* **Left Side (Suggestions / Unsorted):** Shows diagnoses that need grouping. Initially, these are suggestions. Later, it will show diagnoses from any groups you delete. A counter shows your progress through the initial suggestions (e.g., `(1 / 15)`).
15+
* **Right Side (Your Confirmed Groups):** Shows the groups and subgroups you create. Groups are listed alphabetically.
16+
17+
**3. Grouping Diagnoses**
18+
19+
* **Your Task:** Move all diagnoses from the left side into groups on the right side.
20+
* **Handling Suggestions (Left Side):**
21+
* **Option 1: Group Them Together:** If the suggested diagnoses belong together, click **"Create / Merge Group"**.
22+
* Enter a name. If it's a *new* name, a new group is made. If it's an *existing* group name, the diagnoses are added to that group.
23+
* **Option 2: Drag and Drop:** If the suggestions don't belong together, **drag** each diagnosis individually from the left side and **drop** it onto a group header on the right side.
24+
* **Creating Empty Groups (Right Side):**
25+
* Click **"+ Create New Group"** at the bottom right.
26+
* Type a unique name and click "Add Group".
27+
* Drag diagnoses into this new group.
28+
* **Creating Subgroups (Right Side):**
29+
* **Purpose:** Use subgroups for diagnoses that are *directly caused* by another (e.g., Glaucoma caused by Diabetes). The main condition is the parent group.
30+
* **How:** Click **"+ Add Subgroup"** within the parent group. Name the subgroup (e.g., "Glaucoma").
31+
* **Ordering Subgroups:**
32+
* **Purpose:** Show disease progression if a group has multiple causal subgroups.
33+
* **How:** **Drag and drop** the subgroup headers up or down within their parent group.
34+
* **Deleting Groups/Subgroups:**
35+
* Hover over the group/subgroup name on the right.
36+
* Click the **trash can icon** that appears.
37+
* Confirm the deletion.
38+
* **What happens:** The group is removed, but the diagnoses inside it are moved to the "Deleted / Unsorted Diagnoses" list on the left side for you to regroup later.
39+
* **Handling Deleted/Unsorted Diagnoses (Left Side):**
40+
* After finishing the initial suggestions, any diagnoses from deleted groups appear here.
41+
* You **must drag** these into groups on the right side until this list is empty.
42+
43+
**4. Saving & Undo**
44+
45+
* **Saving:** Your work saves automatically, but you can click **"Save Progress"** to save immediately.
46+
* **Undo:** Click **"Undo"** to reverse your last action (like adding/deleting a group or moving a diagnosis).
47+
48+
**5. Grouping Ideas**
49+
50+
* **Main Groups:** Put diagnoses describing the same condition together (e.g., group "Glaucoma - Left Eye" and "Glaucoma - Right Eye" into a "Glaucoma" group).
51+
* **Subgroups:** Show cause-and-effect (e.g., "Diabetes" group with a "Diabetic Retinopathy" subgroup). Order subgroups by progression.
52+
* **Goal:** Make sure every diagnosis ends up in a group.

0 commit comments

Comments
 (0)