A full-stack healthcare coordination platform designed to digitalize and secure the inter-hospital patient transfer lifecycle.
The Inter-Hospital Patient Transfer System (IPTS) is a multi-client healthcare coordination platform developed to support the complete patient-transfer lifecycle between medical institutions.
The system connects hospital personnel, dispatchers, ambulance crews, and authorized family members through a centralized backend. It combines transfer management, hospital matching, ambulance coordination, patient monitoring, secure family tracking, and audit logging.
IPTS was developed as an academic prototype during a software engineering internship at the Higher IT School (HITS), Tomsk State University.
| Section | Description |
|---|---|
| 🎯 The Problem | The real-world problem IPTS addresses |
| 💡 Solution | How IPTS addresses the problem |
| ✨ Key Features | Main capabilities of the platform |
| 🏗️ Architecture | System architecture and major components |
| 🧠 Hospital Matching | Rule-based hospital matching workflow |
| 🔐 Privacy-Preserving Patient Data | Secure patient-data disclosure mechanism |
| 🖥️ Application Screenshots | Screenshots of the working application |
| 🛠️ Technology Stack | Technologies and frameworks used |
| 🔒 Security Architecture | Authentication, authorization, encryption and auditing |
| 📁 Project Structure | Repository organization |
| 🚀 Getting Started | Installation and setup instructions |
| 📌 Project Status | Current project status |
| ⚙️ Engineering Highlights | Software engineering skills demonstrated |
| 🔮 Future Improvements | Potential future development |
| 👨💻 Author | Project author and contact information |
| 🎓 Academic Context | Internship and academic background |
Inter-hospital patient transfers involve multiple healthcare professionals and organizations that must coordinate time-sensitive information, hospital capacity, transportation, and patient care.
Without a centralized digital workflow, the transfer process can become fragmented across different participants:
- Sending hospitals need to communicate patient transfer requirements to potential receiving hospitals.
- Receiving hospitals need to determine whether they have the appropriate beds, medical capabilities, equipment, and insurance compatibility to accept a transfer.
- Dispatchers need to coordinate suitable ambulances and crews after a transfer is accepted.
- Ambulance crews need access to relevant transfer information and must communicate the patient's status during transportation.
- Families need a secure way to follow the progress of a transfer.
- Sensitive patient information must be protected and disclosed only to authorized personnel.
IPTS addresses these challenges by bringing the transfer lifecycle into one coordinated digital platform, from transfer request and hospital matching to ambulance coordination, patient monitoring, and family tracking.
IPTS supports the transfer lifecycle from request creation through delivery:
Sending Doctor
│
▼
Anonymous Transfer Request
│
▼
Hospital Matching
│
▼
Receiving Hospital Response
│
▼
Authorized Patient-Data Reveal
│
▼
Dispatcher Assignment
│
▼
Ambulance Crew
│
├── Driver status updates
└── Paramedic vital signs
│
▼
Transfer Completion
│
▼
Family Tracking
The system initially distributes only the information required for hospital matching. Confidential patient information remains protected until the transfer is accepted and authorization checks succeed.
Hospital administrators can manage:
- Hospitals
- Wards
- Beds
- Personnel accounts
- Operational resources
Sending doctors can create transfer requests containing the requirements needed to coordinate a patient's transfer.
The system supports the transfer lifecycle from request creation to delivery at the receiving hospital.
IPTS identifies suitable receiving hospitals using operational and transfer requirements including:
- Medical specialization
- Bed availability
- Required equipment
- Insurance compatibility
- Geographical distance
The matching mechanism ranks suitable hospitals using operational information to reduce manual coordination.
A central design principle is separating anonymous transfer requirements from confidential patient information.
During initial matching, hospitals receive the information required to evaluate the transfer without receiving the patient's full confidential record.
After a receiving hospital accepts the transfer, the system performs authorization checks before confidential patient information can be revealed.
Confidential patient records are protected using AES-256 encryption.
After a transfer is accepted, dispatchers can coordinate available ambulances and transportation activities.
Ambulance personnel can:
- Receive transfer assignments
- Update transportation status
- Record patient vital signs
- Support the transfer while in transit
The Android client supports ambulance drivers and paramedics during transportation.
Drivers can manage transfer status while paramedics can submit patient vital signs during the transfer.
Authorized family members can access a dedicated tracking portal through secure tracking tokens.
The portal provides limited visibility into:
- Transfer progress
- Ambulance location
- Transportation status
It does not expose confidential patient information.
Significant operations are recorded for traceability, including:
- Transfer creation
- Hospital responses
- Ambulance assignment
- Patient-data reveal
- Status updates
- Vital-sign submissions
IPTS uses a distributed client-server architecture with three presentation clients connected to a centralized ASP.NET Core backend.
React Web Application
- Doctors
- Hospital administrators
- Dispatchers
Android Application
- Ambulance drivers
- Paramedics
Family Tracking Portal
- Authorized family members
The backend uses a layered architecture separating:
- API controllers
- Application/business services
- Repositories
- Domain entities
- DTOs
- Infrastructure services
The backend coordinates hospital management, transfer workflows, matching, ambulance dispatch, authentication, family tracking, encryption, and audit logging.
The matching workflow evaluates anonymous transfer requirements and identifies suitable hospitals using operational data.
The matching process considers factors such as hospital capacity, required equipment, insurance compatibility, and geographical distance before returning suitable candidates.
The patient-data reveal mechanism is one of the core security features of IPTS.
The system keeps confidential patient information protected during the initial matching process. After a receiving hospital accepts the transfer, the system verifies authorization before allowing the protected record to be revealed.
The reveal operation is also recorded in the audit trail.
The sending hospital creates a transfer request using requirements needed for matching without initially exposing the patient's identity.
Receiving hospitals can review the transfer requirements and respond according to their available resources.
After acceptance and authorization, the protected patient information can be revealed to the authorized receiving hospital.
The dispatcher coordinates ambulance resources and transportation activities.
The crew application supports driver and paramedic workflows during transportation.
Authorized family members can follow transfer progress and ambulance location through the tracking portal.
| Area | Technologies |
|---|---|
| Backend | C#, ASP.NET Core 8, Entity Framework Core |
| Web | React 18, TypeScript |
| Mobile | Kotlin, Android |
| Database | PostgreSQL |
| Authentication | JWT, ASP.NET Identity |
| Authorization | Role-Based Access Control |
| Security | HTTPS, AES-256 |
| API | RESTful APIs |
| Version Control | Git |
| API Testing | Postman |
| Backend IDE | Visual Studio |
| Frontend IDE | Visual Studio Code |
| Mobile IDE | Android Studio |
| Database Administration | pgAdmin |
Security is implemented as a cross-cutting concern throughout the system.
JWT-based authentication is used together with ASP.NET Identity.
Role-based authorization restricts operations according to staff responsibilities, including:
- Administrator
- Doctor
- Dispatcher
- Driver
- Paramedic
Confidential patient records are encrypted using AES-256 before storage.
Patient data is not required for initial hospital matching. Confidential information becomes accessible only after transfer acceptance and authorization verification.
Important operations are recorded with information such as the acting user, role, timestamp, action type, and details.
IPTS/
├── AndroidApp/
├── Backend/
├── docs/
│ ├── architecture/
│ │ └── system-architecture.png
│ ├── screenshots/
│ │ ├── crew-application.png
│ │ ├── dispatcher-dashboard.png
│ │ ├── family-tracking.png
│ │ ├── hospital-response.png
│ │ ├── patient-data-reveal.png
│ │ └── transfer-creation.png
│ │
│ ├── security/
│ │ └── patient-data-reveal.png
│ │
│ └──workflows/
│ └── hospital-matching-flow.png
├── Frontend/
├── .gitignore
└── README.md
Install:
- .NET 8 SDK
- Node.js
- PostgreSQL
- Android Studio (for the Android client)
- Git
git clone https://github.com/kouassioberd/IPTS.git
cd IPTSNavigate to the backend API project, configure the PostgreSQL connection and required application settings, then run:
dotnet runNavigate to the React application:
npm install
npm run devOpen the Android project in Android Studio, configure the development API endpoint, and run it on an emulator or physical Android device.
Security note: Do not commit real credentials, connection strings, tokens, or other secrets to the repository.
Academic prototype — working implementation
IPTS was developed as a software engineering internship project and demonstrates the design and implementation of a complete healthcare coordination workflow.
It is not presented as a production clinical system or certified medical device.
This project provided practical experience across the full software development lifecycle:
- Requirements analysis
- Domain modeling
- System architecture
- Database design
- REST API development
- Backend service development
- React frontend development
- Android development
- Authentication and authorization
- Data encryption
- Privacy-preserving workflow design
- Hospital matching
- Ambulance coordination
- API testing
- Audit logging
Potential future work includes:
- Expanded automated test coverage
- Further real-time communication improvements
- More advanced matching criteria
- Expanded analytics and reporting
- Deployment automation
- Production-grade monitoring and infrastructure
- Integration with external healthcare information systems
KOUASSI Nougbognonhou Oberd
Software Engineering Student
Tomsk State University
Tomsk, Russia
GitHub: @kouassioberd
IPTS was developed during a software engineering internship at the Higher IT School (HITS), Tomsk State University.
The project was developed as an academic prototype and involved the analysis, design, implementation, testing, and integration of a multi-client healthcare coordination platform.







