TRUST-SCAN is a comprehensive digital healthcare platform designed to streamline the management and sharing of medical records between patients and healthcare providers. With a focus on security, privacy, and controlled access, TRUST-SCAN ensures that sensitive medical data remains protected while enabling seamless collaboration between patients and doctors.— powered by Spring Boot, React, and MySQL.
TRUST-SCAN is a digital healthcare solution enabling patients and doctors to securely upload, view, and share medical documents. Each patient receives a unique code for controlled access and secure doctor collaboration.
- 🆔 Unique Patient Codes: Individual identifiers for secure access
- 📄 Document Management: Upload and manage reports, prescriptions, and scans
- 🔒 Secure Sharing: Grant or revoke doctor access to your documents
- 🧾 Profile Management: Update and maintain personal information safely
- 🔍 Patient Lookup: Find patients using their unique codes
- 📊 Document Review: Access uploaded reports and records
- 🧠 Collaborative Tools: Review patient history for better treatment decisions
- 🔐 Restricted Access: Role-based permissions ensure privacy
| Feature | Description |
|---|---|
| JWT Authentication | Token-based security for sessions |
| Role-based Access Control | Separate Patient / Doctor privileges |
| Data Encryption | HTTPS and encrypted file handling |
| SQL Injection Prevention | ORM and prepared statements |
| File Validation | Secure and type-checked uploads |
- Java 17
- Spring Boot 2.7.0
- Spring Security
- Spring Data JPA
- MySQL 8.0
- Maven
- React 18
- TypeScript
- Tailwind CSS
- Axios
- React Router
- MySQL 8.0 – Primary data storage
- JDBC – Database connectivity
Relations:
Users → Patients / Doctors
Patients → Documents
Patient ↔ Doctor → Access Permissions
| Requirement | Minimum Version |
|---|---|
| Java JDK | 17+ |
| Maven | 3.6+ |
| Node.js | 16+ |
| MySQL | 8.0+ |
| Git | Latest |
| Method | Endpoint | Description | Access |
|---|---|---|---|
| POST | /api/auth/login |
User authentication | Public |
| POST | /api/auth/register |
User registration | Public |
| GET | /api/patients/{code} |
Fetch patient by code | Authenticated |
| GET | /api/patients/check-code/{code} |
Verify patient code | Public |
| POST | /api/documents/upload |
Upload medical document | Authenticated |
| GET | /api/documents/patient/{code} |
Get patient documents | Authenticated |
| GET | /api/documents/download/{id} |
Download document | Authenticated |
| Table | Description |
|---|---|
users |
Stores login credentials & roles |
patients |
Patient details and unique codes |
doctors |
Doctor details and identifiers |
documents |
Uploaded medical files |
patient_doctor_access |
Permission mapping between patients & doctors |
- Search for patients using unique codes
- View authorized patient documents
- Upload medical reports
- No access to unauthorized records
- View and upload personal medical files
- Manage profile data
- Grant or revoke doctor access
- ✅ JWT Authentication: Secure, stateless session management
- 🔑 BCrypt Password Hashing: Encrypted credentials
- 🧱 SQL Injection Prevention: JPA with prepared statements
- 🌍 CORS Configuration: Controlled cross-origin access
- 🧾 File Validation: Enforced upload rules for safety
- 🧩 Granular Role Control: Patient/Doctor-specific permissions
- 🧬 AI-based health data insights
- 🗃️ Cloud storage integration (AWS S3 / Firebase)
- 📱 Mobile-responsive dashboard
- 🧠 Smart document classification