Medical Records
A complete guide to the Medical Records module — vitals, clinical notes, diagnoses, attachments, and the visit timeline.
Written By Dev010
Last updated 19 days ago
The Medical Records module provides a structured way to document everything that happens during a patient visit — vital signs, clinical notes, diagnoses, and file attachments. Records are organized per patient and can be linked to a specific appointment.
Clinic type note: The Medical Records module appears in the sidebar for
generalandophthalmologyclinic types. Dental clinics use the Odontograms module instead.
Accessing the Module
Sidebar → Medical Records
Direct URL:
https://yourdomain.com/dashboard/medical-recordsWho can access:
Module Structure
Medical Records is divided into five sub-sections, each accessible from the sidebar under Medical Records:
Vitals
Accessing Vitals
Sidebar → Medical Records → Vitals
https://yourdomain.com/dashboard/medical-records/vitalsWhat Vitals Records
Each vitals entry captures a snapshot of a patient's physical measurements at a point in time:
Adding Vitals
Click Add Vitals on the vitals page.
Select the patient, optionally link to an appointment, fill in the measurements, and save. Not all fields are required — record only the measurements taken during the visit.
BMI is calculated server-side from weight (kg) and height (cm) when both are provided. You do not need to calculate it manually.
Vitals Table
The vitals list shows all recorded vitals across all patients with the most recent entries first. Each row shows:
Patient name
Blood pressure (systolic/diastolic)
Heart rate
Temperature
Weight and height
BMI
Recorded by and recorded at
Clinical Notes
Accessing Clinical Notes
Sidebar → Medical Records → Clinical Notes
https://yourdomain.com/dashboard/medical-records/clinical-notesWhat Clinical Notes Record
Clinical notes are free-text entries written by doctors or nurses during or after a patient visit:
Adding a Clinical Note
Click Add Clinical Note on the clinical notes page.
Select the patient, optionally link to an appointment, write the note content, and save.
Clinical notes are attributed to the logged-in user automatically as the author. The author cannot be changed after creation.
Clinical Notes Table
The notes list shows all notes across all patients with the most recent first. Each row shows patient name, author, note excerpt, linked appointment, and creation date.
Diagnoses
Accessing Diagnoses
Sidebar → Medical Records → Diagnoses
https://yourdomain.com/dashboard/medical-records/diagnosesWhat Diagnoses Record
Diagnoses are formal clinical findings associated with a patient:
Diagnosis Status
Status can be updated at any time — for example changing a diagnosis from active to resolved after successful treatment.
Adding a Diagnosis
Click Add Diagnosis on the diagnoses page.
Select the patient and doctor, enter the diagnosis title and optional ICD code, set the status and date, and save.
Diagnoses Table
The diagnoses list shows all diagnoses across all patients. Each row shows patient name, title, ICD code, status badge, doctor, and diagnosis date.
Attachments
Accessing Attachments
Sidebar → Medical Records → Attachments
https://yourdomain.com/dashboard/medical-records/attachmentsWhat Attachments Store
File uploads linked to a patient — lab results, X-rays, referral letters, scan reports, or any supporting documents:
Supported File Types and Limits
Files are stored in the medical-attachments Supabase storage bucket. Confirm this bucket exists and is set to Public before uploading — see the Supabase Setup guide.
Adding an Attachment
Click Add Attachment on the attachments page.
Select the patient, optionally link to an appointment, choose the file from your device, and save. The file uploads to Supabase Storage and a record is created in the medical_attachments table.
Attachments Table
The attachments list shows all uploaded files across all patients. Each row shows patient name, file name, file type, linked appointment, and upload date. Click the file name to open or download the file.
Visit Timeline
Accessing the Visit Timeline
Sidebar → Medical Records → Visit Timeline
https://yourdomain.com/dashboard/medical-records/visit-timelineWhat the Visit Timeline Shows
The visit timeline gives a chronological view of all medical activity for a patient across all record types in a single view.
Two layout options are available:
Card View — Each visit is displayed as a card showing the date, linked appointment, doctor, and all records from that visit — vitals, notes, diagnoses, and attachments grouped together.
Gantt View — A horizontal timeline showing the span of active diagnoses and visits across time. Useful for understanding the duration of ongoing conditions.
Searching the Timeline
Use the search bar on the visit timeline page to filter by patient name. The timeline updates to show only records for the selected patient.
Medical Record Visits
In addition to the individual sub-sections, CareNova also has a top-level medical_records table that represents a visit record — a container that links a patient, doctor, and appointment to a specific date.
Vitals, clinical notes, diagnoses, and attachments can all be linked to both a patient and an appointment — they do not strictly require a parent medical record row. The medical_records table provides an optional grouping layer for visit-based workflows.
Database Schema Reference
medical_records
medical_record_vitals
clinical_notes
diagnoses
medical_attachments
Workflow Examples
Recording a complete patient visit:
Nurse records vitals — Medical Records → Vitals → Add Vitals
Doctor writes clinical note — Medical Records → Clinical Notes → Add Clinical Note
Doctor adds diagnosis — Medical Records → Diagnoses → Add Diagnosis
Doctor uploads lab result — Medical Records → Attachments → Add Attachment
Review full visit — Medical Records → Visit Timeline
Updating a resolved diagnosis:
Medical Records → Diagnoses
Find the diagnosis row
Edit → change status from
activetoresolved→ Save
Reviewing a patient's complete medical history:
Sidebar → Patients
Find the patient → View Full Profile
Navigate through tabs — appointments, prescriptions, medical records
Troubleshooting
Medical Records not in sidebar:
Confirm clinic type is
generalorophthalmology— dental clinics show Odontograms insteadConfirm your role has
medical_records.viewpermission in Dashboard → PermissionsReceptionist does not have medical records access by default
File upload failing:
Confirm the
medical-attachmentsbucket exists in Supabase Storage and is set to PublicConfirm file is under 10MB
Confirm file type is PDF, DOC, DOCX, JPEG, PNG, GIF, or WebP
Confirm
SUPABASE_SERVICE_ROLE_KEYis correctly set in environment variables
Vitals not showing BMI:
BMI is only calculated when both weight (kg) and height (cm) are provided
Confirm both fields were filled in when recording vitals
Visit timeline showing no records:
Confirm the patient has at least one vitals, clinical note, diagnosis, or attachment record
Use the search bar to filter by the specific patient name
Next Step
Continue to the Prescriptions module guide to learn how to create and manage patient prescriptions in CareNova.