A website application that dentists can use to diagnose specific abnormalities in less time and with better accuracy using panoramic dental radiography.
-
To run the server, the first step is downloading and installing NodeJS on your machine.
-
Open a terminal, navigate to the project's directory, and run the following command to install the needed packages:
npm i
-
Create a
.env
file in the project's root directory and fill in the data according to the .env.example file. -
Now, run the server through:
npm start run:dev
HTTP Method | Endpoint | Required fields | Optional fields | Action | Response |
---|---|---|---|---|---|
POST | /auth/signUp | - firstName: string - lastName: string - email: string - password: string - medicalId: string |
- yearsOfExperience: number - clinicAddress: string - clinicPhone: string |
SignUp | - 'Created' message |
POST | /auth/signIp | - email: string - password: string |
None | SignIn | - The dentistFound object - jwt access token in auth-token header |
POST | /auth/verifyAccount | - email: string - OTP: string |
None | Verify Account | - 'OK' message |
POST | /auth/newOTP | - email: string | None | Generate New OTP | - 'Created' message |
Note: The following endpoints require an access token (bearer token)
HTTP Method | Endpoint | Required fields | Optional fields | Action | Response |
---|---|---|---|---|---|
POST | /dentists/patients | firstName: string middleName: string lastName: string clinicId: number gender: string birthDate: date '2000-06-17' |
email: string phone: string medicalHistory: string dentalHistory: string |
Add Patient | - The created patient object |
GET | /dentists/patients/:patientClinicId | None | None | Get Patient | |
Patch | /dentists/patients/:patientClinicId | None | All fields could be edited | Edit Patient | - The updatedPatient object |
POST | /patients/:patientClinicId/xrays | xray: image birthDate: date '2000-06-17' note: both are attached as form-data |
None | Add Patient Xray (Detect) | - The created xray object |
GET | /patients/:patientClinicId/xrays | None | None | Get Patient Xrays | - Array of xrays objects |
POST | /patients/xrays/:xrayId` | dentistComment: string | None | Comment on Detection | - xray object |
Note: optional fields could be null
dentist = {
firstName,
lastName,
userName,
email,
password,
yearsOfExperience,
medicalId,
clinicAddress,
patients: [{
patientId,
patientName,
patientClinicId
}]
}
patient = {
firstName,
middleName,
lastName,
userName,
clinicId,
gender,
email,
birthDate,
age,
phone,
medicalHistory,
dentalHistory,
xRays: [{
xrayId
}]
}
xray = {
originalURL,
detectionURL,
dentistComment,
xrayDate
}
The back-end is available under the MIT License.