diff --git a/docs/hcp/architectures.md b/docs/hcp/architectures.md new file mode 100644 index 0000000000..af7d1b417b --- /dev/null +++ b/docs/hcp/architectures.md @@ -0,0 +1,113 @@ +--- +id: architectures +title: Architecture Strategies +sidebar_label: Architecture Strategies +--- + +# 🧩 Combining HCP Modules: Architecture Strategies + +## Overview + +The Health Composable Platform (HCP) is built around a modular architecture that enables flexible composition of features. Each module—such as EHR, Therapy and Monitoring, User Authentication, Booking, and Notification—is composed of a set of microservices designed to be **independent and reusable**. + +Depending on the organizational and technical context, modules can be deployed in two different architectural strategies: + +1. **Isolated Modules in Separate Kubernetes Namespaces** +2. **Unified Deployment in a Single Kubernetes Namespace** + +This document outlines both approaches and provides a comparison to help you choose the right setup for your needs. + +--- + +## 1 Isolated Modules in Separate Kubernetes Namespaces + +### 🏗️ Description + +In this model, each module is deployed into its **own Kubernetes namespace**. It includes: + +- A **dedicated API Gateway** for routing requests specific to the module. +- A **dedicated CRUD Service** for managing persistence related to that module's data. +- Its own business-specific microservices and configurations. + +This model emphasizes **separation of concerns** and **domain isolation**. + +### ✅ Pros + +| Benefit | Description | +|--------|-------------| +| 🔒 **Security** | Each namespace can have its own access controls, limiting surface area and blast radius. | +| 🧩 **Modularity** | Modules are fully decoupled, making them easier to develop, test, and deploy independently. | +| 🛠️ **Scalability** | You can scale individual modules based on usage (e.g., scale EHR separately from Notifications). | +| 🧪 **Resilience** | Faults or failures in one module do not impact others. | +| 🔁 **Reusability** | Modules can be reused across multiple projects or customers in an isolated fashion. | + +### ❌ Cons + +| Limitation | Description | +|-----------|-------------| +| ⚙️ **Operational Complexity** | Requires managing multiple gateways, CRUD services, and namespaces. | +| 💰 **Resource Overhead** | More services running in parallel means higher infrastructure costs. | +| 📡 **Cross-Module Communication** | Interactions between modules may require explicit service mesh configurations or gateway routing. | + +--- + +## 2 Unified Deployment in a Single Kubernetes Namespace + +### 🏗️ Description + +In this strategy, all module components are deployed into a **single Kubernetes namespace**. It includes: + +- A **shared API Gateway** that exposes all the APIs across modules. +- A **shared CRUD Service** that interfaces with all databases or collections. +- All module-specific microservices running side by side. + +This setup is often used in simpler deployments or early development stages. + +### ✅ Pros + +| Benefit | Description | +|--------|-------------| +| 🚀 **Simplicity** | Easier to configure, deploy, and monitor as everything is centralized. | +| 💸 **Cost-Effective** | Reduces infrastructure footprint by consolidating common services like the API Gateway and CRUD. | +| 📦 **Faster Setup** | Ideal for proof-of-concepts, demos, or environments with limited DevOps resources. | +| 🧍‍♂️ **Easier Management** | Fewer components to manage and maintain. | + +### ❌ Cons + +| Limitation | Description | +|-----------|-------------| +| ⚠️ **Tight Coupling** | Makes it harder to evolve or deploy modules independently. | +| 🔐 **Security Risks** | Less granularity in access control—risk of overexposure if RBAC isn’t strictly enforced. | +| 🧪 **Lack of Isolation** | Bugs or issues in one module may affect the others. | +| 🧱 **Scalability Limitations** | All modules scale together, which may lead to inefficiencies. | + +--- + +## Choosing the Right Strategy + +| Use Case | Recommended Strategy | +|----------|----------------------| +| **Large-scale or multi-tenant deployment** | Isolated namespaces | +| **Independent team development per module** | Isolated namespaces | +| **Simple or MVP-level application** | Single namespace | +| **Tight DevOps control or low resource environment** | Single namespace | +| **Projects requiring strong fault isolation** | Isolated namespaces | + +--- + +## Transitioning from Unified to Isolated + +It's common to **start with a unified namespace** during the initial phases of development and later **migrate to an isolated namespace strategy** as the platform grows. The modular design of HCP makes this transition smooth, as services are already defined independently. + +--- + +## Architecture Examples + +### Isolated Namespaces Example + +![Isolated Namespaces](./img/svg-files/hcp.modules.svg) + +### Unified Namespace Example + +![Unified Namespace](./img/svg-files/hcp.unique.svg) + diff --git a/docs/hcp/img/drawio-files/hcp.modules.drawio b/docs/hcp/img/drawio-files/hcp.modules.drawio new file mode 100644 index 0000000000..2f247d214c --- /dev/null +++ b/docs/hcp/img/drawio-files/hcp.modules.drawio @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/hcp/img/drawio-files/hcp.unique.drawio b/docs/hcp/img/drawio-files/hcp.unique.drawio new file mode 100644 index 0000000000..e94050fcef --- /dev/null +++ b/docs/hcp/img/drawio-files/hcp.unique.drawio @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/hcp/img/svg-files/hcp.modules.svg b/docs/hcp/img/svg-files/hcp.modules.svg new file mode 100644 index 0000000000..ebe53e6739 --- /dev/null +++ b/docs/hcp/img/svg-files/hcp.modules.svg @@ -0,0 +1,4 @@ + + + +
Form Service Backend
Form Service Frontend
Device Manager
Therapy and Monitoring  Manager
Therapy and Monitoring
Authentication Service 
Auth0 Client
User Manager Service
Auth User Module
Authorization Service
Login Site
Appointment Manager
Teleconsultation Service Backend
Booking Module
Teleconsultation Service Frontend
Notification Manager
Mail Service
Notification Module
SMS Service
Email Builder
Timer Service
Files Service
API Gateway
CRUD Service
API Gateway
CRUD Service
API Gateway
CRUD Service
CRUD Service
API Gateway
Electronic Health Record
Fhir Adapter
Fhir Server
CRUD Service
API Gateway
\ No newline at end of file diff --git a/docs/hcp/img/svg-files/hcp.unique.svg b/docs/hcp/img/svg-files/hcp.unique.svg new file mode 100644 index 0000000000..1afc37660d --- /dev/null +++ b/docs/hcp/img/svg-files/hcp.unique.svg @@ -0,0 +1,4 @@ + + + +
Form Service Backend
Form Service Frontend
Device Manager
Therapy and Monitoring  Manager
Authentication Service 
Auth0 Client
User Manager Service
Authorization Service
Login Site
Appointment Manager
Teleconsultation Service Backend
Teleconsultation Service Frontend
Notification Manager
Mail Service
SMS Service
Email Builder
Timer Service
Files Service
CRUD Service
Fhir Adapter
Fhir Server
API Gateway
Health Composable Platform
\ No newline at end of file diff --git a/docs/hcp/modules/booking.md b/docs/hcp/modules/booking.md new file mode 100644 index 0000000000..32723145cf --- /dev/null +++ b/docs/hcp/modules/booking.md @@ -0,0 +1,99 @@ +--- +id: booking +title: Booking Module +sidebar_label: Booking Module +--- + +# 📅 Booking Module + +## Overview + +The **Booking Module** is a key component of the Health Composable Platform (HCP), designed to manage appointments between users of the platform, such as patients, doctors, and other resources. It enables the creation of availability slots, the management of exceptions (e.g., vacations or illnesses), and the booking of appointments. Additionally, it supports the creation of teleconsultations through integration with video conferencing services. + +## Key Features + +- **Appointment Management**: Create, update, and delete appointments between users. +- **Availability Slots**: Define time slots available for booking, including exception periods. +- **Resource Booking**: Reserve resources such as doctors, rooms, or medical equipment. +- **Teleconsultation**: Create and manage virtual rooms for remote consultations. + +## Microservices Architecture + +The Booking Module consists of several microservices working together to provide all the needed functionalities: + +### 1. Appointment Manager + +The **Appointment Manager** microservice is responsible for managing appointments, availability slots, and exceptions. It supports two operational modes: + +- **Appointments Mode**: Direct appointment management without setting up availability. +- **Full Mode**: Complete management with availability configuration, exceptions, and slot-based appointment booking. + +**Main Capabilities:** + +- CRUD operations for appointments +- Availability and time slot definition +- Exception handling (e.g., holidays, sick leave) +- Integration with notification systems for appointment reminders + +**Documentation:** + +- [Appointment Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/overview) +- [Appointment Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/usage) +- [Appointment Manager Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/configuration) + +### 2. Teleconsultation Service Backend + +The **Teleconsultation Service Backend** acts as a Backend For Frontend (BFF) for the teleconsultation service. It manages the creation, update, and deletion of teleconsultation sessions and integrates with the Kaleyra SaaS platform for video conferencing. + +**Main Capabilities:** + +- Create, update, and delete teleconsultation sessions +- Integration with Kaleyra for video calls +- Support for call features like chat, whiteboard, screen sharing, and file upload + +**Documentation:** + +- [Teleconsultation Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/teleconsultation-service-backend/overview) +- [Teleconsultation Service Backend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-backend/configuration) + +### 3. Teleconsultation Service Frontend + +The **Teleconsultation Service Frontend** provides the user interface for teleconsultations. It embeds the video conferencing interface via an iframe and includes a set of tools to improve the remote visit experience. + +**Main Capabilities:** + +- Visual interface for remote consultations +- Tools such as chat, whiteboard, screen sharing, and file upload +- Multi-language support (English and Italian) + +**Documentation:** + +- [Teleconsultation Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/overview) +- [Teleconsultation Service Frontend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/configuration) + +## Configuration and Customization + +The Booking Module is highly configurable and can be adapted to fit the specific needs of any healthcare organization: + +- **Role and Permission Management**: Customize user roles and access levels for appointment management. +- **Integration with External Systems**: Connect to external systems for resource and notification management. +- **UI Customization**: Adapt the teleconsultation interface to align with your organization's branding. + +## Integration and Interoperability + +The Booking Module is designed for seamless integration with other HCP modules and third-party systems: + +- **Interoperability**: Connect with national and regional healthcare information systems. +- **API Access**: Expose RESTful APIs for appointment and teleconsultation management. +- **Modular Design**: Extend functionality by integrating additional microservices as needed. + +## Conclusion + +The **Booking Module** of the Health Composable Platform offers a complete and flexible solution for managing healthcare appointments and teleconsultations. Its modular architecture and wide range of configuration options allow healthcare organizations to optimize resource management and improve patient experience. + +**Further Reading:** + +- [Booking Module Overview](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/booking-module/overview) +- [Appointment Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/overview) +- [Teleconsultation Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/teleconsultation-service-backend/overview) +- [Teleconsultation Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/overview) diff --git a/docs/hcp/modules/ehr.md b/docs/hcp/modules/ehr.md new file mode 100644 index 0000000000..2b83d6703e --- /dev/null +++ b/docs/hcp/modules/ehr.md @@ -0,0 +1,138 @@ +--- +id: ehr +title: Electronic Health Record +sidebar_label: Electronic Health Record +--- + +# 🏥 EHR Module – Electronic Health Record + +## Overview + +The **Electronic Health Record (EHR)** module serves as the central hub for managing patient clinical data within the Health Composable Platform (HCP). +It provides a unified, structured, and interoperable system that aggregates information from various sources, ensuring a comprehensive view of each patient's medical history. +Designed with modularity and scalability in mind, the EHR module facilitates seamless integration with other healthcare systems and standards, notably HL7 FHIR. + +## Key Features + +- **Centralized Data Management**: Consolidates patient information from multiple systems into a single, accessible record. +- **Standards Compliance**: Supports healthcare interoperability standards like FHIR (Fast Healthcare Interoperability Resources). +- **Real-Time Updates**: Ensures that patient data is current, facilitating timely clinical decisions. +- **Role-Based Access Control**: Maintains data security by restricting access based on user roles. +- **Audit Trails**: Keeps detailed logs of data access and modifications for compliance and monitoring purposes. + +## Microservices Architecture + +The EHR module is composed of several microservices that work in tandem to provide robust and flexible healthcare data management: + +### 1. Form Service Backend + +The **Form Service Backend** acts as the backend-for-frontend (BFF) for the form management system. +It handles API requests related to form creation, retrieval, submission, and versioning. + +**Key Capabilities:** + +- Form Schema Management: Create, update, and retrieve form templates. +- Form Submission Handling: Manage user-submitted data, including drafts and final submissions. +- Versioning Support: Maintain multiple versions of form data for historical reference. +- Export Functionality: Export form data in CSV format for reporting and analysis. + +**Documentation:** + +- [Form Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/form-service-backend/overview) +- [Form Service Backend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-backend/configuration) + +### 2. Form Service Frontend + +The **Form Service Frontend** provides a user interface for building and visualizing forms. +It leverages [formio.js](https://formio.github.io/formio.js/) to offer a customizable form builder and renderer. + +**Key Capabilities:** + +- Form Builder: Allows users to design custom forms using a drag-and-drop interface. +- Form Visualizer: Enables users to fill out and submit forms. +- Styling Support: Customize the appearance of forms to match organizational branding. +- Integration Options: Can be integrated as a micro-frontend or within a headless CMS. + +**Documentation:** + +- [Form Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-frontend/overview) +- [Form Service Frontend Configuration](https://docs.mia-platform.eu/docs/runtime_suite/form-service-frontend/configuration) + +### 3. FHIR Adapter + +The **FHIR Adapter** enables interoperability between systems that implement the FHIR standard and those that do not. +It allows for the saving and retrieval of FHIR data from a FHIR Server using non-standard JSON payloads, utilizing configurations to map fields between non-standard JSON and standard FHIR JSON formats. + +**Key Capabilities:** + +- Data Mapping: Translate non-standard JSON to FHIR-compliant JSON and vice versa. +- CRUD Operations: Perform create, read, update, and delete operations on FHIR resources. +- Versioning and History: Access historical versions of FHIR resources. +- File Management: Upload and download files associated with FHIR resources. + +**Documentation:** + +- [FHIR Adapter Overview and Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/overview_and_usage) +- [FHIR Adapter Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/configuration) +- [FHIR Adapter File Management](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/files_management) + +### 4. Mia FHIR Server + +The **Mia FHIR Server** is a microservice that fully implements the FHIR standard, based on HAPI FHIR, an open-source Java implementation. +It is responsible for exposing, storing, and validating FHIR resources as defined by the standard. +The server supports HL7 FHIR releases DSTU3, R4, and R5. + +**Key Capabilities:** + +- FHIR Compliance: Full support for FHIR standards and resources. +- RESTful API: Expose FHIR resources via RESTful APIs. +- Web Application and Swagger Interface: User-friendly interfaces for interacting with FHIR resources. +- Versioning and History: Access to specific versions and history of FHIR resources. + +**Documentation:** + +- [Mia FHIR Server Overview and Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/mia-fhir-server/overview_and_usage) +- [Mia FHIR Server Configuration](https://docs.mia-platform.eu/docs/runtime_suite/mia-fhir-server/configuration) + +## Configurability + +The EHR module's form services are highly configurable, allowing healthcare providers to tailor forms to specific clinical needs. + +**Custom Form Creation:** + +- **Anamnesis Forms**: Collect detailed patient medical histories. +- **Therapy Monitoring**: Track ongoing treatments and patient responses. +- **Assessment Tools**: Implement standardized health assessments and scales. + +**Form Assignments:** + +Forms can be assigned to specific users or groups, ensuring that only authorized personnel can access and submit sensitive information. + +**Styling and Theming:** + +Customize the look and feel of forms to align with organizational branding, enhancing user experience and consistency. + +**Version Control:** + +Maintain multiple versions of forms and submissions, enabling historical data analysis and compliance with regulatory requirements. + +## Integration and Extensibility + +The EHR module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Supports integration with national and regional health information systems. +- **API Access**: Provides RESTful APIs for data exchange and system interoperability. +- **Modular Design**: Can be extended with additional microservices to meet evolving healthcare needs. + +## Conclusion + +The EHR module of the Health Composable Platform offers a flexible, secure, and comprehensive solution for managing patient health records. +Its modular architecture, combined with powerful form management capabilities and FHIR integration, empowers healthcare providers to deliver personalized and coordinated care. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Form Service Backend Documentation](https://docs.mia-platform.eu/docs/runtime_suite/form-service-backend/overview) +- [Form Service Frontend Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-frontend/overview) +- [FHIR Adapter Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/overview_and_usage) +- [Mia FHIR Server Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/mia-fhir-server/overview_and_usage) + diff --git a/docs/hcp/modules/notification.md b/docs/hcp/modules/notification.md new file mode 100644 index 0000000000..8f4c932d66 --- /dev/null +++ b/docs/hcp/modules/notification.md @@ -0,0 +1,155 @@ +--- +id: notification +title: Notification Module +sidebar_label: Notification Module +--- + +# 🔔 Notification Module + +## Overview + +The **Notification Module** is a core component of the Health Composable Platform (HCP) responsible for managing the communication of time-sensitive and contextual information across multiple channels. It enables the sending of messages such as alerts, reminders, confirmations, and updates to both individual users and user groups via email, SMS, voice calls, WhatsApp, and more. + +This module provides powerful tools to create, manage, and deliver personalized notifications based on system events or scheduled triggers, making it crucial for ensuring effective and timely communication in healthcare scenarios. + +## Key Capabilities + +- **Multi-channel Support**: Deliver messages via email, SMS, voice, WhatsApp, and push notifications. +- **Template-based Messaging**: Easily create reusable and customizable message templates. +- **Event-driven and Scheduled Messaging**: Notifications can be triggered by system events or scheduled in advance. +- **File Attachments**: Support for attaching documents or reports to notifications. +- **Extensive Integrations**: Seamless integration with other HCP modules and third-party providers. + +## Architecture & Microservices + +The Notification Module is composed of several independently deployable microservices. Each is responsible for a specific function within the messaging pipeline: + +--- + +### 1. Notification Manager + +The Notification Manager handles the full lifecycle of a notification: listening to triggering events, resolving templates, routing messages through the appropriate channel, and managing delivery statuses. It can also schedule messages to be sent later and supports user targeting via custom rules. + +**Main Capabilities:** + +- Register and manage notification templates +- Receive and process events from other platform components +- Route messages to the appropriate channel (email, SMS, etc.) +- Integrate with services for scheduling and template rendering + +**Documentation**: +- [Notification Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/notification-manager-service/overview) +- [Notification Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/notification-manager-service/usage) + +--- + +### 2. Mail Service + +This service sends emails using AWS SES or SMTP. It integrates with the File Service to include attachments and supports HTML rendering. + +**Main Capabilities:** + +- Send transactional and scheduled emails +- Handle attachments +- Support CC/BCC and recipient lists + +**Documentation**: +- [Mail Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/ses-mail-notification-service/usage) + +--- + +### 3. SMS Service + +The SMS Service sends messages through providers like Twilio and Kaleyra. It includes safeguards to prevent abuse. + +**Main Capabilities:** + +- Send real-time or scheduled SMS +- Support for multiple providers +- Data validation and sanitation + +**Documentation**: +- [SMS Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/overview) +- [SMS Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/usage) + +--- + +### 4. Email Builder + +This frontend tool allows admins to design and preview email templates via a drag-and-drop interface. + +**Main Capabilities:** + +- Create and manage HTML templates +- Export for use with the Notification Manager + +**Documentation**: +- [Email Builder Overview & Usage](https://docs.mia-platform.eu/docs/runtime_suite/email-builder/overview_and_usage) + +--- + +### 5. Timer Service + +Enables actions like reminders and delayed notifications. + +**Main Capabilities:** + +- Schedule future events +- Manage queues +- Ensure timely delivery + +**Documentation**: +- [Timer Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/timer-service/usage) + +--- + +### 6. Files Service + +Supports notification attachments and secure document handling. + +**Main Capabilities:** + +- Upload and store files +- Retrieve files via API +- Metadata and access management + +**Documentation**: +- [Files Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/files-service/usage) + +--- + +## Configuration & Customization + +The Notification Module can be tailored to your needs: + +- Enable/disable specific channels +- Choose external providers (e.g., AWS SES, Twilio) +- Create role- and language-specific templates +- Schedule recurring or one-time messages + +## Use Cases + +- Appointment confirmations and reminders +- Prescription renewal alerts +- Follow-up care instructions +- Group broadcasts (e.g., staff updates) +- Test result availability +- Emergency and health campaign alerts + +## Integration + +- Event-driven architecture +- RESTful APIs +- Multi-tenant support + +## Conclusion + +The **Notification Module** is a flexible messaging infrastructure for healthcare. It ensures that vital communications—alerts, reminders, results—are delivered through the right channels at the right time, improving both care quality and operational efficiency. + +**Links to Documentation**: +- [Notification Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/notification-manager-service/overview) +- [Mail Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/ses-mail-notification-service/usage) +- [SMS Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/overview) +- [Email Builder Overview](https://docs.mia-platform.eu/docs/runtime_suite/email-builder/overview_and_usage) +- [Timer Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/timer-service/usage) +- [Files Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/files-service/usage) diff --git a/docs/hcp/modules/therapy-and-monitoring.md b/docs/hcp/modules/therapy-and-monitoring.md new file mode 100644 index 0000000000..7331f3bc27 --- /dev/null +++ b/docs/hcp/modules/therapy-and-monitoring.md @@ -0,0 +1,88 @@ +--- +id: therapy-and-monitoring +title: Therapy and Monitoring +sidebar_label: Therapy and Monitoring +--- + +# 🩺 Therapy and Monitoring Module + +## Overview + +The **Therapy and Monitoring Module** is a core component of the Health Composable Platform (HCP) designed to manage patient therapies and monitor health conditions. +It enables healthcare professionals to define therapy plans, monitor patient adherence and compliance, and integrate data from medical and wearable devices such as Apple Watch. +This module ensures a comprehensive approach to patient care by combining therapy management with real-time health data monitoring. + +## Key Features + +- **Therapy Management**: Define and manage therapy plans tailored to individual patient needs. +- **Monitoring Plans**: Set up monitoring protocols to track specific health parameters. +- **Device Integration**: Collect and analyze data from medical devices and wearables. +- **Adherence and Compliance Tracking**: Monitor patient adherence to therapy schedules and compliance with prescribed activities. +- **Notifications**: Configure alerts to notify healthcare providers and patients of critical events or deviations. + +## Microservices Architecture + +The Therapy and Monitoring Module comprises two primary microservices that work in tandem to provide comprehensive therapy and monitoring functionalities: + +### 1. Device Manager + +The **Device Manager** is responsible for collecting, storing, and visualizing patient health data from medical and wearable devices. +It supports integration with providers such as Medisanté and Apple HealthKit, enabling real-time acquisition of health data. + +**Key Capabilities:** + +- **Data Collection**: Acquire health data from various devices and providers. +- **Data Normalization**: Standardize health data formats for consistency and analysis. +- **Integration with Therapy and Monitoring Manager**: Forward relevant health data to the Therapy and Monitoring Manager for inclusion in monitoring plans. + +**Documentation:** + +- [Device Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/overview) +- [Device Manager Usage](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/usage) +- [Device Manager Configuration](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/configuration) + +### 2. Therapy and Monitoring Manager (TMM) + +The **Therapy and Monitoring Manager** enables healthcare professionals to manage patient therapies and monitor health conditions, adherence, and compliance. +It allows the definition of thresholds and the sending of notifications to alert involved parties of events occurring during the therapy and monitoring period. + +**Key Capabilities:** + +- **Therapy and Monitoring Plan Management**: Create and manage therapy and monitoring plans with defined start and end dates, associated doctors and patients, and specific prototypes for validation. +- **Detection Handling**: Process patient-entered data (detections) to assess adherence and compliance. +- **Notification System**: Send alerts based on predefined thresholds and patient data entries. + +**Documentation:** + +- [Therapy and Monitoring Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/overview) +- [Therapy and Monitoring Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/usage) +- [Therapy and Monitoring Manager Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/configuration) + +## Configurability + +The module offers extensive configurability to cater to diverse healthcare needs: + +- **Custom Prototypes**: Define validation schemas (prototypes) for detections to ensure data integrity. +- **Threshold Settings**: Set thresholds for health parameters to trigger notifications. +- **Device Enrollment**: Manually or automatically enroll devices for data collection. +- **Notification Channels**: Configure multiple channels (email, SMS, etc.) for sending alerts. + +## Integration and Extensibility + +The Therapy and Monitoring Module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Supports integration with national and regional health information systems. +- **API Access**: Provides RESTful APIs for data exchange and system interoperability. +- **Modular Design**: Can be extended with additional microservices to meet evolving healthcare needs. + +## Conclusion + +The Therapy and Monitoring Module of the Health Composable Platform offers a robust and flexible solution for managing patient therapies and monitoring health conditions. +Its integration capabilities with medical devices and wearables, combined with comprehensive configurability, empower healthcare providers to deliver personalized and proactive care. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Device Manager Documentation](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/overview) +- [Therapy and Monitoring Manager Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/overview) + +> _Note: The information provided here is based on the official Mia-Platform documentation as of the latest available versions. For the most up-to-date details, please consult the official documentation links provided above._ diff --git a/docs/hcp/modules/user-auth.md b/docs/hcp/modules/user-auth.md new file mode 100644 index 0000000000..9a4f5b3b04 --- /dev/null +++ b/docs/hcp/modules/user-auth.md @@ -0,0 +1,137 @@ +--- +id: user-auth +title: User Auth Module +sidebar_label: User Auth Module +--- + +# 🔐 User Authentication Module + +## Overview + +The **User Authentication Module** is a fundamental component of the Health Composable Platform (HCP) designed to manage user accounts and access control across the platform. +It facilitates the registration and management of various user roles, such as administrators, doctors, and patients, each customizable to fit specific organizational needs. +The module supports authentication through multiple external providers and manages API access permissions for different user groups. + +## Key Features + +- **Role Management**: Define and customize user roles (e.g., administrators, doctors, patients) to align with organizational structures. +- **Authentication Providers**: Support for multiple external authentication providers, including GitLab, GitHub, Okta, Microsoft AD, and Microsoft AD B2C. +- **Authorization Control**: Manage API access permissions based on user roles and groups. +- **User Management**: Handle user creation, updates, deletions, and role assignments. +- **Login Interface**: Provide a user-friendly login interface with support for redirects and session management. + +## Microservices Architecture + +The User Authentication Module comprises several microservices that work together to provide comprehensive authentication and authorization functionalities: + +### 1. Authentication Service + +The **Authentication Service** is responsible for handling the authentication process using various OAuth2 providers. +It supports the `authorization_code` and `password` grant types and provides endpoints for user login and information retrieval. + +**Key Capabilities:** + +- Support for multiple OAuth2 providers +- Endpoints for user authorization and information retrieval +- Integration with external identity providers + +**Documentation:** + +- [Authentication Service Overview](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/overview) +- [Authentication Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/usage) +- [Authentication Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/configuration) + +### 2. Auth0 Client + +The **Auth0 Client** serves as an alternative to the Authentication Service, interfacing with Auth0 for authentication processes. +It acts as a token broker, securely handling tokens between the frontend application and Auth0. + +**Key Capabilities:** + +- Integration with Auth0 for authentication +- Secure token handling and session management +- User management through Auth0's API + +**Documentation:** + +- [Auth0 Client Overview](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/overview) +- [Auth0 Client Usage](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/usage) +- [Configure Auth0](https://docs.mia-platform.eu/docs/next/runtime_suite/auth0-client/configure_auth0) + +### 3. Authorization Service + +The **Authorization Service** manages access control by validating requests against defined policies. +It determines whether a request should be authorized based on the user's roles and permissions. + +**Key Capabilities:** + +- Policy-based access control +- Validation of user permissions for API requests +- Integration with the API Gateway for request authorization + +**Documentation:** + +- [Authorization Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/authorization-service/overview) +- [Authorization Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/authorization-service/configuration) + +### 4. User Manager Service + +The **User Manager Service** handles user account management, including creation, updates, deletions, and role assignments. +It works in conjunction with the chosen authentication service to maintain user data consistency. + +**Key Capabilities:** + +- User CRUD operations +- Role and permission assignments +- Synchronization with authentication services + +**Documentation:** + +- [User Manager Service Overview](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/overview) +- [User Manager Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/usage) +- [User Manager Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/configuration) + +### 5. Login Site + +The **Login Site** provides the user interface for authentication, handling login flows and redirects. +It integrates with the authentication services to facilitate user login and session management. + +**Key Capabilities:** + +- User-friendly login interface +- Support for redirects and session handling +- Integration with authentication services for login flows + +**Documentation:** + +- [Login Site Authentication Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/dev_portal/authentication_configuration) + +## Configurability + +The User Authentication Module offers extensive configurability to meet diverse organizational requirements: + +- **Custom Roles**: Define and manage custom user roles with specific permissions. +- **Authentication Providers**: Configure multiple external authentication providers to suit organizational needs. +- **Access Policies**: Establish detailed access control policies for API endpoints. +- **User Management**: Customize user management workflows, including self-registration and admin approval processes. + +## Integration and Extensibility + +The module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Integrate with national and regional health information systems. +- **API Access**: Provide RESTful APIs for user and access management. +- **Modular Design**: Extend functionalities by integrating additional microservices as needed. + +## Conclusion + +The User Authentication Module of the Health Composable Platform offers a robust and flexible solution for managing user identities and access control. +Its comprehensive features and configurability empower healthcare organizations to maintain secure and efficient user management practices. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Authentication Service Documentation](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/overview) +- [Auth0 Client Documentation](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/overview) +- [Authorization Service Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/authorization-service/overview) +- [User Manager Service Documentation](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/overview) +- [Login Site Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/dev_portal/authentication_configuration) diff --git a/docs/hcp/overview.md b/docs/hcp/overview.md new file mode 100644 index 0000000000..2b02c1d297 --- /dev/null +++ b/docs/hcp/overview.md @@ -0,0 +1,140 @@ +--- +id: overview +title: What is HCP? +sidebar_label: What is HCP? +--- + +# What is HCP? + +**HCP (Health Composable Platform)** is a modular digital health platform built using plugins from **Mia Care** and **Mia Platform**. It enables healthcare providers, especially those operating in long-term care facilities like, to create secure, scalable, and interoperable digital ecosystems for patient management. + +The platform leverages a **composable architecture**, meaning that it is built from independent, interchangeable modules. Each module focuses on a specific aspect of healthcare management, allowing organizations to tailor the solution to their needs while maintaining full interoperability across components. + +--- + +## Why HCP? + +Modern healthcare environments are increasingly complex and data-driven. HCP addresses the key challenges faced by care providers: + +- Fragmented patient data spread across disconnected systems +- Manual and error-prone workflows +- Inadequate coordination among care teams +- Security and compliance burdens + +HCP offers a **unified, flexible, and secure** platform to streamline healthcare operations, ensure continuity of care, and improve patient outcomes. + +--- + +## Modular Architecture of HCP + +Each HCP module can operate independently or be integrated with others to form a comprehensive solution. Here's a breakdown of the key modules: + +--- + +### 🏥 EHR – Electronic Health Record + +A **centralized system for managing patient clinical data**. The EHR module serves as the core of the HCP ecosystem by aggregating medical data from multiple sources into a structured and unified format. + +**Key Features:** +- Aggregation of health data from labs, devices, and third-party systems +- Patient summary views, including history, diagnoses, allergies, and treatments +- Support for FHIR (Fast Healthcare Interoperability Resources) standards +- Integration with clinical decision support tools + +**Benefits:** +- Improves data accessibility for care teams +- Reduces duplication and administrative overhead +- Enables longitudinal views of patient health + +--- + +### 🩺 Therapy and Monitoring + +This module enables **monitoring and management of ongoing therapies**, integrating both manual data entry and automatic data collection from medical devices. + +**Key Features:** +- Therapy prescription and scheduling +- Real-time data collection via connected devices (e.g., vitals monitors) +- Manual data entry by caregivers or medical staff +- Alerts and thresholds for abnormal readings +- Visualization of health trends over time + +**Benefits:** +- Enables proactive care with continuous monitoring +- Reduces errors in administering therapies +- Enhances patient safety and adherence to treatment plans + +--- + +### 🔐 User Auth Module + +Manages **user identity, access control, and role-based permissions**, ensuring that each operator or healthcare professional has the appropriate level of access to sensitive information. + +**Key Features:** +- User registration and login +- Role-based access control (RBAC) +- Single Sign-On (SSO) support +- Audit trails and access logs + +**Benefits:** +- Strengthens security and privacy compliance (e.g., GDPR, HIPAA) +- Simplifies access for multidisciplinary teams +- Prevents unauthorized access to sensitive data + +--- + +### 📅 Booking Module + +Supports the **scheduling and coordination of medical appointments**, improving efficiency in managing resources like doctors, rooms, and equipment. + +**Key Features:** +- Calendar-based appointment scheduling +- Availability management for professionals and facilities +- Support for recurring appointments +- Notifications and reminders for staff and patients + +**Benefits:** +- Reduces no-shows and missed appointments +- Improves resource utilization +- Enhances patient experience and care continuity + +--- + +### 🔔 Notification Module + +Enables **multi-channel communication** for timely and effective coordination between healthcare professionals and patients. + +**Key Features:** +- Configurable notification workflows (triggers and actions) +- Support for email, SMS, and voice messages +- Custom templates for different events (e.g., appointment reminders, alerts) +- Integration with external messaging providers + +**Benefits:** +- Improves communication within care teams +- Keeps patients and families informed +- Automates routine messaging and reduces manual work + +--- + +## Built for Interoperability and Scalability + +HCP is designed to integrate easily with third-party systems and national/regional health services. The use of open standards and APIs ensures: + +- Seamless data exchange +- Support for regional EHR repositories +- Compliance with healthcare data regulations + +Scalable by design, HCP can serve both small care facilities and large healthcare networks, adapting to evolving organizational needs. + +--- + +## Summary + +HCP provides a **future-proof foundation** for delivering connected, patient-centered care. With its composable architecture, healthcare providers can: + +- Digitally transform care operations +- Improve patient outcomes and staff efficiency +- Maintain security and compliance at all times + +Whether you're modernizing an existing infrastructure or building a digital health solution from scratch, **HCP offers the flexibility, power, and trustworthiness needed in today’s healthcare landscape**. diff --git a/docusaurus.config.js b/docusaurus.config.js index ef1ee20224..0168bdd401 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -52,7 +52,13 @@ async function createConfig() { docId: "p4samd/overview", label: "P4SaMD", activeBaseRegex: "(docs|docs/\\d.x)/p4samd" - } + }, + { + type: 'doc', + docId: "hcp/overview", + label: "Health Composable Platform", + activeBaseRegex: "(docs|docs/\\d.x)/hcp" + } ] }, { diff --git a/sidebars.json b/sidebars.json index 0ef60abc79..a6199955d2 100644 --- a/sidebars.json +++ b/sidebars.json @@ -115,5 +115,48 @@ "label": "Frequently Asked Questions (FAQs)", "type": "doc" } + ], + "Health Composable Platform": [ + { + "id": "hcp/overview", + "label": "What is HCP?", + "type": "doc" + }, + { + "label": "Modules", + "type": "category", + "items": [ + { + "id": "hcp/modules/ehr", + "label": "Electronic Health Record", + "type": "doc" + }, + { + "id": "hcp/modules/therapy-and-monitoring", + "label": "Therapy and Monitoring", + "type": "doc" + }, + { + "id": "hcp/modules/user-auth", + "label": "User Auth Module", + "type": "doc" + }, + { + "id": "hcp/modules/booking", + "label": "Booking Module", + "type": "doc" + }, + { + "id": "hcp/modules/notification", + "label": "Notification Module", + "type": "doc" + } + ] + }, + { + "id": "hcp/architectures", + "label": "Architecture Strategies", + "type": "doc" + } ] -} \ No newline at end of file +} diff --git a/versioned_docs/version-2.0.x/hcp/architectures.md b/versioned_docs/version-2.0.x/hcp/architectures.md new file mode 100644 index 0000000000..af7d1b417b --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/architectures.md @@ -0,0 +1,113 @@ +--- +id: architectures +title: Architecture Strategies +sidebar_label: Architecture Strategies +--- + +# 🧩 Combining HCP Modules: Architecture Strategies + +## Overview + +The Health Composable Platform (HCP) is built around a modular architecture that enables flexible composition of features. Each module—such as EHR, Therapy and Monitoring, User Authentication, Booking, and Notification—is composed of a set of microservices designed to be **independent and reusable**. + +Depending on the organizational and technical context, modules can be deployed in two different architectural strategies: + +1. **Isolated Modules in Separate Kubernetes Namespaces** +2. **Unified Deployment in a Single Kubernetes Namespace** + +This document outlines both approaches and provides a comparison to help you choose the right setup for your needs. + +--- + +## 1 Isolated Modules in Separate Kubernetes Namespaces + +### 🏗️ Description + +In this model, each module is deployed into its **own Kubernetes namespace**. It includes: + +- A **dedicated API Gateway** for routing requests specific to the module. +- A **dedicated CRUD Service** for managing persistence related to that module's data. +- Its own business-specific microservices and configurations. + +This model emphasizes **separation of concerns** and **domain isolation**. + +### ✅ Pros + +| Benefit | Description | +|--------|-------------| +| 🔒 **Security** | Each namespace can have its own access controls, limiting surface area and blast radius. | +| 🧩 **Modularity** | Modules are fully decoupled, making them easier to develop, test, and deploy independently. | +| 🛠️ **Scalability** | You can scale individual modules based on usage (e.g., scale EHR separately from Notifications). | +| 🧪 **Resilience** | Faults or failures in one module do not impact others. | +| 🔁 **Reusability** | Modules can be reused across multiple projects or customers in an isolated fashion. | + +### ❌ Cons + +| Limitation | Description | +|-----------|-------------| +| ⚙️ **Operational Complexity** | Requires managing multiple gateways, CRUD services, and namespaces. | +| 💰 **Resource Overhead** | More services running in parallel means higher infrastructure costs. | +| 📡 **Cross-Module Communication** | Interactions between modules may require explicit service mesh configurations or gateway routing. | + +--- + +## 2 Unified Deployment in a Single Kubernetes Namespace + +### 🏗️ Description + +In this strategy, all module components are deployed into a **single Kubernetes namespace**. It includes: + +- A **shared API Gateway** that exposes all the APIs across modules. +- A **shared CRUD Service** that interfaces with all databases or collections. +- All module-specific microservices running side by side. + +This setup is often used in simpler deployments or early development stages. + +### ✅ Pros + +| Benefit | Description | +|--------|-------------| +| 🚀 **Simplicity** | Easier to configure, deploy, and monitor as everything is centralized. | +| 💸 **Cost-Effective** | Reduces infrastructure footprint by consolidating common services like the API Gateway and CRUD. | +| 📦 **Faster Setup** | Ideal for proof-of-concepts, demos, or environments with limited DevOps resources. | +| 🧍‍♂️ **Easier Management** | Fewer components to manage and maintain. | + +### ❌ Cons + +| Limitation | Description | +|-----------|-------------| +| ⚠️ **Tight Coupling** | Makes it harder to evolve or deploy modules independently. | +| 🔐 **Security Risks** | Less granularity in access control—risk of overexposure if RBAC isn’t strictly enforced. | +| 🧪 **Lack of Isolation** | Bugs or issues in one module may affect the others. | +| 🧱 **Scalability Limitations** | All modules scale together, which may lead to inefficiencies. | + +--- + +## Choosing the Right Strategy + +| Use Case | Recommended Strategy | +|----------|----------------------| +| **Large-scale or multi-tenant deployment** | Isolated namespaces | +| **Independent team development per module** | Isolated namespaces | +| **Simple or MVP-level application** | Single namespace | +| **Tight DevOps control or low resource environment** | Single namespace | +| **Projects requiring strong fault isolation** | Isolated namespaces | + +--- + +## Transitioning from Unified to Isolated + +It's common to **start with a unified namespace** during the initial phases of development and later **migrate to an isolated namespace strategy** as the platform grows. The modular design of HCP makes this transition smooth, as services are already defined independently. + +--- + +## Architecture Examples + +### Isolated Namespaces Example + +![Isolated Namespaces](./img/svg-files/hcp.modules.svg) + +### Unified Namespace Example + +![Unified Namespace](./img/svg-files/hcp.unique.svg) + diff --git a/versioned_docs/version-2.0.x/hcp/img/drawio-files/hcp.modules.drawio b/versioned_docs/version-2.0.x/hcp/img/drawio-files/hcp.modules.drawio new file mode 100644 index 0000000000..2f247d214c --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/img/drawio-files/hcp.modules.drawio @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/versioned_docs/version-2.0.x/hcp/img/drawio-files/hcp.unique.drawio b/versioned_docs/version-2.0.x/hcp/img/drawio-files/hcp.unique.drawio new file mode 100644 index 0000000000..e94050fcef --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/img/drawio-files/hcp.unique.drawio @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/versioned_docs/version-2.0.x/hcp/img/svg-files/hcp.modules.svg b/versioned_docs/version-2.0.x/hcp/img/svg-files/hcp.modules.svg new file mode 100644 index 0000000000..ebe53e6739 --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/img/svg-files/hcp.modules.svg @@ -0,0 +1,4 @@ + + + +
Form Service Backend
Form Service Frontend
Device Manager
Therapy and Monitoring  Manager
Therapy and Monitoring
Authentication Service 
Auth0 Client
User Manager Service
Auth User Module
Authorization Service
Login Site
Appointment Manager
Teleconsultation Service Backend
Booking Module
Teleconsultation Service Frontend
Notification Manager
Mail Service
Notification Module
SMS Service
Email Builder
Timer Service
Files Service
API Gateway
CRUD Service
API Gateway
CRUD Service
API Gateway
CRUD Service
CRUD Service
API Gateway
Electronic Health Record
Fhir Adapter
Fhir Server
CRUD Service
API Gateway
\ No newline at end of file diff --git a/versioned_docs/version-2.0.x/hcp/img/svg-files/hcp.unique.svg b/versioned_docs/version-2.0.x/hcp/img/svg-files/hcp.unique.svg new file mode 100644 index 0000000000..1afc37660d --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/img/svg-files/hcp.unique.svg @@ -0,0 +1,4 @@ + + + +
Form Service Backend
Form Service Frontend
Device Manager
Therapy and Monitoring  Manager
Authentication Service 
Auth0 Client
User Manager Service
Authorization Service
Login Site
Appointment Manager
Teleconsultation Service Backend
Teleconsultation Service Frontend
Notification Manager
Mail Service
SMS Service
Email Builder
Timer Service
Files Service
CRUD Service
Fhir Adapter
Fhir Server
API Gateway
Health Composable Platform
\ No newline at end of file diff --git a/versioned_docs/version-2.0.x/hcp/modules/booking.md b/versioned_docs/version-2.0.x/hcp/modules/booking.md new file mode 100644 index 0000000000..32723145cf --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/modules/booking.md @@ -0,0 +1,99 @@ +--- +id: booking +title: Booking Module +sidebar_label: Booking Module +--- + +# 📅 Booking Module + +## Overview + +The **Booking Module** is a key component of the Health Composable Platform (HCP), designed to manage appointments between users of the platform, such as patients, doctors, and other resources. It enables the creation of availability slots, the management of exceptions (e.g., vacations or illnesses), and the booking of appointments. Additionally, it supports the creation of teleconsultations through integration with video conferencing services. + +## Key Features + +- **Appointment Management**: Create, update, and delete appointments between users. +- **Availability Slots**: Define time slots available for booking, including exception periods. +- **Resource Booking**: Reserve resources such as doctors, rooms, or medical equipment. +- **Teleconsultation**: Create and manage virtual rooms for remote consultations. + +## Microservices Architecture + +The Booking Module consists of several microservices working together to provide all the needed functionalities: + +### 1. Appointment Manager + +The **Appointment Manager** microservice is responsible for managing appointments, availability slots, and exceptions. It supports two operational modes: + +- **Appointments Mode**: Direct appointment management without setting up availability. +- **Full Mode**: Complete management with availability configuration, exceptions, and slot-based appointment booking. + +**Main Capabilities:** + +- CRUD operations for appointments +- Availability and time slot definition +- Exception handling (e.g., holidays, sick leave) +- Integration with notification systems for appointment reminders + +**Documentation:** + +- [Appointment Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/overview) +- [Appointment Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/usage) +- [Appointment Manager Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/configuration) + +### 2. Teleconsultation Service Backend + +The **Teleconsultation Service Backend** acts as a Backend For Frontend (BFF) for the teleconsultation service. It manages the creation, update, and deletion of teleconsultation sessions and integrates with the Kaleyra SaaS platform for video conferencing. + +**Main Capabilities:** + +- Create, update, and delete teleconsultation sessions +- Integration with Kaleyra for video calls +- Support for call features like chat, whiteboard, screen sharing, and file upload + +**Documentation:** + +- [Teleconsultation Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/teleconsultation-service-backend/overview) +- [Teleconsultation Service Backend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-backend/configuration) + +### 3. Teleconsultation Service Frontend + +The **Teleconsultation Service Frontend** provides the user interface for teleconsultations. It embeds the video conferencing interface via an iframe and includes a set of tools to improve the remote visit experience. + +**Main Capabilities:** + +- Visual interface for remote consultations +- Tools such as chat, whiteboard, screen sharing, and file upload +- Multi-language support (English and Italian) + +**Documentation:** + +- [Teleconsultation Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/overview) +- [Teleconsultation Service Frontend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/configuration) + +## Configuration and Customization + +The Booking Module is highly configurable and can be adapted to fit the specific needs of any healthcare organization: + +- **Role and Permission Management**: Customize user roles and access levels for appointment management. +- **Integration with External Systems**: Connect to external systems for resource and notification management. +- **UI Customization**: Adapt the teleconsultation interface to align with your organization's branding. + +## Integration and Interoperability + +The Booking Module is designed for seamless integration with other HCP modules and third-party systems: + +- **Interoperability**: Connect with national and regional healthcare information systems. +- **API Access**: Expose RESTful APIs for appointment and teleconsultation management. +- **Modular Design**: Extend functionality by integrating additional microservices as needed. + +## Conclusion + +The **Booking Module** of the Health Composable Platform offers a complete and flexible solution for managing healthcare appointments and teleconsultations. Its modular architecture and wide range of configuration options allow healthcare organizations to optimize resource management and improve patient experience. + +**Further Reading:** + +- [Booking Module Overview](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/booking-module/overview) +- [Appointment Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/overview) +- [Teleconsultation Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/teleconsultation-service-backend/overview) +- [Teleconsultation Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/overview) diff --git a/versioned_docs/version-2.0.x/hcp/modules/ehr.md b/versioned_docs/version-2.0.x/hcp/modules/ehr.md new file mode 100644 index 0000000000..2b83d6703e --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/modules/ehr.md @@ -0,0 +1,138 @@ +--- +id: ehr +title: Electronic Health Record +sidebar_label: Electronic Health Record +--- + +# 🏥 EHR Module – Electronic Health Record + +## Overview + +The **Electronic Health Record (EHR)** module serves as the central hub for managing patient clinical data within the Health Composable Platform (HCP). +It provides a unified, structured, and interoperable system that aggregates information from various sources, ensuring a comprehensive view of each patient's medical history. +Designed with modularity and scalability in mind, the EHR module facilitates seamless integration with other healthcare systems and standards, notably HL7 FHIR. + +## Key Features + +- **Centralized Data Management**: Consolidates patient information from multiple systems into a single, accessible record. +- **Standards Compliance**: Supports healthcare interoperability standards like FHIR (Fast Healthcare Interoperability Resources). +- **Real-Time Updates**: Ensures that patient data is current, facilitating timely clinical decisions. +- **Role-Based Access Control**: Maintains data security by restricting access based on user roles. +- **Audit Trails**: Keeps detailed logs of data access and modifications for compliance and monitoring purposes. + +## Microservices Architecture + +The EHR module is composed of several microservices that work in tandem to provide robust and flexible healthcare data management: + +### 1. Form Service Backend + +The **Form Service Backend** acts as the backend-for-frontend (BFF) for the form management system. +It handles API requests related to form creation, retrieval, submission, and versioning. + +**Key Capabilities:** + +- Form Schema Management: Create, update, and retrieve form templates. +- Form Submission Handling: Manage user-submitted data, including drafts and final submissions. +- Versioning Support: Maintain multiple versions of form data for historical reference. +- Export Functionality: Export form data in CSV format for reporting and analysis. + +**Documentation:** + +- [Form Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/form-service-backend/overview) +- [Form Service Backend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-backend/configuration) + +### 2. Form Service Frontend + +The **Form Service Frontend** provides a user interface for building and visualizing forms. +It leverages [formio.js](https://formio.github.io/formio.js/) to offer a customizable form builder and renderer. + +**Key Capabilities:** + +- Form Builder: Allows users to design custom forms using a drag-and-drop interface. +- Form Visualizer: Enables users to fill out and submit forms. +- Styling Support: Customize the appearance of forms to match organizational branding. +- Integration Options: Can be integrated as a micro-frontend or within a headless CMS. + +**Documentation:** + +- [Form Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-frontend/overview) +- [Form Service Frontend Configuration](https://docs.mia-platform.eu/docs/runtime_suite/form-service-frontend/configuration) + +### 3. FHIR Adapter + +The **FHIR Adapter** enables interoperability between systems that implement the FHIR standard and those that do not. +It allows for the saving and retrieval of FHIR data from a FHIR Server using non-standard JSON payloads, utilizing configurations to map fields between non-standard JSON and standard FHIR JSON formats. + +**Key Capabilities:** + +- Data Mapping: Translate non-standard JSON to FHIR-compliant JSON and vice versa. +- CRUD Operations: Perform create, read, update, and delete operations on FHIR resources. +- Versioning and History: Access historical versions of FHIR resources. +- File Management: Upload and download files associated with FHIR resources. + +**Documentation:** + +- [FHIR Adapter Overview and Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/overview_and_usage) +- [FHIR Adapter Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/configuration) +- [FHIR Adapter File Management](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/files_management) + +### 4. Mia FHIR Server + +The **Mia FHIR Server** is a microservice that fully implements the FHIR standard, based on HAPI FHIR, an open-source Java implementation. +It is responsible for exposing, storing, and validating FHIR resources as defined by the standard. +The server supports HL7 FHIR releases DSTU3, R4, and R5. + +**Key Capabilities:** + +- FHIR Compliance: Full support for FHIR standards and resources. +- RESTful API: Expose FHIR resources via RESTful APIs. +- Web Application and Swagger Interface: User-friendly interfaces for interacting with FHIR resources. +- Versioning and History: Access to specific versions and history of FHIR resources. + +**Documentation:** + +- [Mia FHIR Server Overview and Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/mia-fhir-server/overview_and_usage) +- [Mia FHIR Server Configuration](https://docs.mia-platform.eu/docs/runtime_suite/mia-fhir-server/configuration) + +## Configurability + +The EHR module's form services are highly configurable, allowing healthcare providers to tailor forms to specific clinical needs. + +**Custom Form Creation:** + +- **Anamnesis Forms**: Collect detailed patient medical histories. +- **Therapy Monitoring**: Track ongoing treatments and patient responses. +- **Assessment Tools**: Implement standardized health assessments and scales. + +**Form Assignments:** + +Forms can be assigned to specific users or groups, ensuring that only authorized personnel can access and submit sensitive information. + +**Styling and Theming:** + +Customize the look and feel of forms to align with organizational branding, enhancing user experience and consistency. + +**Version Control:** + +Maintain multiple versions of forms and submissions, enabling historical data analysis and compliance with regulatory requirements. + +## Integration and Extensibility + +The EHR module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Supports integration with national and regional health information systems. +- **API Access**: Provides RESTful APIs for data exchange and system interoperability. +- **Modular Design**: Can be extended with additional microservices to meet evolving healthcare needs. + +## Conclusion + +The EHR module of the Health Composable Platform offers a flexible, secure, and comprehensive solution for managing patient health records. +Its modular architecture, combined with powerful form management capabilities and FHIR integration, empowers healthcare providers to deliver personalized and coordinated care. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Form Service Backend Documentation](https://docs.mia-platform.eu/docs/runtime_suite/form-service-backend/overview) +- [Form Service Frontend Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-frontend/overview) +- [FHIR Adapter Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/overview_and_usage) +- [Mia FHIR Server Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/mia-fhir-server/overview_and_usage) + diff --git a/versioned_docs/version-2.0.x/hcp/modules/notification.md b/versioned_docs/version-2.0.x/hcp/modules/notification.md new file mode 100644 index 0000000000..8f4c932d66 --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/modules/notification.md @@ -0,0 +1,155 @@ +--- +id: notification +title: Notification Module +sidebar_label: Notification Module +--- + +# 🔔 Notification Module + +## Overview + +The **Notification Module** is a core component of the Health Composable Platform (HCP) responsible for managing the communication of time-sensitive and contextual information across multiple channels. It enables the sending of messages such as alerts, reminders, confirmations, and updates to both individual users and user groups via email, SMS, voice calls, WhatsApp, and more. + +This module provides powerful tools to create, manage, and deliver personalized notifications based on system events or scheduled triggers, making it crucial for ensuring effective and timely communication in healthcare scenarios. + +## Key Capabilities + +- **Multi-channel Support**: Deliver messages via email, SMS, voice, WhatsApp, and push notifications. +- **Template-based Messaging**: Easily create reusable and customizable message templates. +- **Event-driven and Scheduled Messaging**: Notifications can be triggered by system events or scheduled in advance. +- **File Attachments**: Support for attaching documents or reports to notifications. +- **Extensive Integrations**: Seamless integration with other HCP modules and third-party providers. + +## Architecture & Microservices + +The Notification Module is composed of several independently deployable microservices. Each is responsible for a specific function within the messaging pipeline: + +--- + +### 1. Notification Manager + +The Notification Manager handles the full lifecycle of a notification: listening to triggering events, resolving templates, routing messages through the appropriate channel, and managing delivery statuses. It can also schedule messages to be sent later and supports user targeting via custom rules. + +**Main Capabilities:** + +- Register and manage notification templates +- Receive and process events from other platform components +- Route messages to the appropriate channel (email, SMS, etc.) +- Integrate with services for scheduling and template rendering + +**Documentation**: +- [Notification Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/notification-manager-service/overview) +- [Notification Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/notification-manager-service/usage) + +--- + +### 2. Mail Service + +This service sends emails using AWS SES or SMTP. It integrates with the File Service to include attachments and supports HTML rendering. + +**Main Capabilities:** + +- Send transactional and scheduled emails +- Handle attachments +- Support CC/BCC and recipient lists + +**Documentation**: +- [Mail Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/ses-mail-notification-service/usage) + +--- + +### 3. SMS Service + +The SMS Service sends messages through providers like Twilio and Kaleyra. It includes safeguards to prevent abuse. + +**Main Capabilities:** + +- Send real-time or scheduled SMS +- Support for multiple providers +- Data validation and sanitation + +**Documentation**: +- [SMS Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/overview) +- [SMS Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/usage) + +--- + +### 4. Email Builder + +This frontend tool allows admins to design and preview email templates via a drag-and-drop interface. + +**Main Capabilities:** + +- Create and manage HTML templates +- Export for use with the Notification Manager + +**Documentation**: +- [Email Builder Overview & Usage](https://docs.mia-platform.eu/docs/runtime_suite/email-builder/overview_and_usage) + +--- + +### 5. Timer Service + +Enables actions like reminders and delayed notifications. + +**Main Capabilities:** + +- Schedule future events +- Manage queues +- Ensure timely delivery + +**Documentation**: +- [Timer Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/timer-service/usage) + +--- + +### 6. Files Service + +Supports notification attachments and secure document handling. + +**Main Capabilities:** + +- Upload and store files +- Retrieve files via API +- Metadata and access management + +**Documentation**: +- [Files Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/files-service/usage) + +--- + +## Configuration & Customization + +The Notification Module can be tailored to your needs: + +- Enable/disable specific channels +- Choose external providers (e.g., AWS SES, Twilio) +- Create role- and language-specific templates +- Schedule recurring or one-time messages + +## Use Cases + +- Appointment confirmations and reminders +- Prescription renewal alerts +- Follow-up care instructions +- Group broadcasts (e.g., staff updates) +- Test result availability +- Emergency and health campaign alerts + +## Integration + +- Event-driven architecture +- RESTful APIs +- Multi-tenant support + +## Conclusion + +The **Notification Module** is a flexible messaging infrastructure for healthcare. It ensures that vital communications—alerts, reminders, results—are delivered through the right channels at the right time, improving both care quality and operational efficiency. + +**Links to Documentation**: +- [Notification Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/notification-manager-service/overview) +- [Mail Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/ses-mail-notification-service/usage) +- [SMS Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/overview) +- [Email Builder Overview](https://docs.mia-platform.eu/docs/runtime_suite/email-builder/overview_and_usage) +- [Timer Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/timer-service/usage) +- [Files Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/files-service/usage) diff --git a/versioned_docs/version-2.0.x/hcp/modules/therapy-and-monitoring.md b/versioned_docs/version-2.0.x/hcp/modules/therapy-and-monitoring.md new file mode 100644 index 0000000000..7331f3bc27 --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/modules/therapy-and-monitoring.md @@ -0,0 +1,88 @@ +--- +id: therapy-and-monitoring +title: Therapy and Monitoring +sidebar_label: Therapy and Monitoring +--- + +# 🩺 Therapy and Monitoring Module + +## Overview + +The **Therapy and Monitoring Module** is a core component of the Health Composable Platform (HCP) designed to manage patient therapies and monitor health conditions. +It enables healthcare professionals to define therapy plans, monitor patient adherence and compliance, and integrate data from medical and wearable devices such as Apple Watch. +This module ensures a comprehensive approach to patient care by combining therapy management with real-time health data monitoring. + +## Key Features + +- **Therapy Management**: Define and manage therapy plans tailored to individual patient needs. +- **Monitoring Plans**: Set up monitoring protocols to track specific health parameters. +- **Device Integration**: Collect and analyze data from medical devices and wearables. +- **Adherence and Compliance Tracking**: Monitor patient adherence to therapy schedules and compliance with prescribed activities. +- **Notifications**: Configure alerts to notify healthcare providers and patients of critical events or deviations. + +## Microservices Architecture + +The Therapy and Monitoring Module comprises two primary microservices that work in tandem to provide comprehensive therapy and monitoring functionalities: + +### 1. Device Manager + +The **Device Manager** is responsible for collecting, storing, and visualizing patient health data from medical and wearable devices. +It supports integration with providers such as Medisanté and Apple HealthKit, enabling real-time acquisition of health data. + +**Key Capabilities:** + +- **Data Collection**: Acquire health data from various devices and providers. +- **Data Normalization**: Standardize health data formats for consistency and analysis. +- **Integration with Therapy and Monitoring Manager**: Forward relevant health data to the Therapy and Monitoring Manager for inclusion in monitoring plans. + +**Documentation:** + +- [Device Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/overview) +- [Device Manager Usage](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/usage) +- [Device Manager Configuration](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/configuration) + +### 2. Therapy and Monitoring Manager (TMM) + +The **Therapy and Monitoring Manager** enables healthcare professionals to manage patient therapies and monitor health conditions, adherence, and compliance. +It allows the definition of thresholds and the sending of notifications to alert involved parties of events occurring during the therapy and monitoring period. + +**Key Capabilities:** + +- **Therapy and Monitoring Plan Management**: Create and manage therapy and monitoring plans with defined start and end dates, associated doctors and patients, and specific prototypes for validation. +- **Detection Handling**: Process patient-entered data (detections) to assess adherence and compliance. +- **Notification System**: Send alerts based on predefined thresholds and patient data entries. + +**Documentation:** + +- [Therapy and Monitoring Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/overview) +- [Therapy and Monitoring Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/usage) +- [Therapy and Monitoring Manager Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/configuration) + +## Configurability + +The module offers extensive configurability to cater to diverse healthcare needs: + +- **Custom Prototypes**: Define validation schemas (prototypes) for detections to ensure data integrity. +- **Threshold Settings**: Set thresholds for health parameters to trigger notifications. +- **Device Enrollment**: Manually or automatically enroll devices for data collection. +- **Notification Channels**: Configure multiple channels (email, SMS, etc.) for sending alerts. + +## Integration and Extensibility + +The Therapy and Monitoring Module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Supports integration with national and regional health information systems. +- **API Access**: Provides RESTful APIs for data exchange and system interoperability. +- **Modular Design**: Can be extended with additional microservices to meet evolving healthcare needs. + +## Conclusion + +The Therapy and Monitoring Module of the Health Composable Platform offers a robust and flexible solution for managing patient therapies and monitoring health conditions. +Its integration capabilities with medical devices and wearables, combined with comprehensive configurability, empower healthcare providers to deliver personalized and proactive care. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Device Manager Documentation](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/overview) +- [Therapy and Monitoring Manager Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/overview) + +> _Note: The information provided here is based on the official Mia-Platform documentation as of the latest available versions. For the most up-to-date details, please consult the official documentation links provided above._ diff --git a/versioned_docs/version-2.0.x/hcp/modules/user-auth.md b/versioned_docs/version-2.0.x/hcp/modules/user-auth.md new file mode 100644 index 0000000000..9a4f5b3b04 --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/modules/user-auth.md @@ -0,0 +1,137 @@ +--- +id: user-auth +title: User Auth Module +sidebar_label: User Auth Module +--- + +# 🔐 User Authentication Module + +## Overview + +The **User Authentication Module** is a fundamental component of the Health Composable Platform (HCP) designed to manage user accounts and access control across the platform. +It facilitates the registration and management of various user roles, such as administrators, doctors, and patients, each customizable to fit specific organizational needs. +The module supports authentication through multiple external providers and manages API access permissions for different user groups. + +## Key Features + +- **Role Management**: Define and customize user roles (e.g., administrators, doctors, patients) to align with organizational structures. +- **Authentication Providers**: Support for multiple external authentication providers, including GitLab, GitHub, Okta, Microsoft AD, and Microsoft AD B2C. +- **Authorization Control**: Manage API access permissions based on user roles and groups. +- **User Management**: Handle user creation, updates, deletions, and role assignments. +- **Login Interface**: Provide a user-friendly login interface with support for redirects and session management. + +## Microservices Architecture + +The User Authentication Module comprises several microservices that work together to provide comprehensive authentication and authorization functionalities: + +### 1. Authentication Service + +The **Authentication Service** is responsible for handling the authentication process using various OAuth2 providers. +It supports the `authorization_code` and `password` grant types and provides endpoints for user login and information retrieval. + +**Key Capabilities:** + +- Support for multiple OAuth2 providers +- Endpoints for user authorization and information retrieval +- Integration with external identity providers + +**Documentation:** + +- [Authentication Service Overview](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/overview) +- [Authentication Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/usage) +- [Authentication Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/configuration) + +### 2. Auth0 Client + +The **Auth0 Client** serves as an alternative to the Authentication Service, interfacing with Auth0 for authentication processes. +It acts as a token broker, securely handling tokens between the frontend application and Auth0. + +**Key Capabilities:** + +- Integration with Auth0 for authentication +- Secure token handling and session management +- User management through Auth0's API + +**Documentation:** + +- [Auth0 Client Overview](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/overview) +- [Auth0 Client Usage](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/usage) +- [Configure Auth0](https://docs.mia-platform.eu/docs/next/runtime_suite/auth0-client/configure_auth0) + +### 3. Authorization Service + +The **Authorization Service** manages access control by validating requests against defined policies. +It determines whether a request should be authorized based on the user's roles and permissions. + +**Key Capabilities:** + +- Policy-based access control +- Validation of user permissions for API requests +- Integration with the API Gateway for request authorization + +**Documentation:** + +- [Authorization Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/authorization-service/overview) +- [Authorization Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/authorization-service/configuration) + +### 4. User Manager Service + +The **User Manager Service** handles user account management, including creation, updates, deletions, and role assignments. +It works in conjunction with the chosen authentication service to maintain user data consistency. + +**Key Capabilities:** + +- User CRUD operations +- Role and permission assignments +- Synchronization with authentication services + +**Documentation:** + +- [User Manager Service Overview](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/overview) +- [User Manager Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/usage) +- [User Manager Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/configuration) + +### 5. Login Site + +The **Login Site** provides the user interface for authentication, handling login flows and redirects. +It integrates with the authentication services to facilitate user login and session management. + +**Key Capabilities:** + +- User-friendly login interface +- Support for redirects and session handling +- Integration with authentication services for login flows + +**Documentation:** + +- [Login Site Authentication Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/dev_portal/authentication_configuration) + +## Configurability + +The User Authentication Module offers extensive configurability to meet diverse organizational requirements: + +- **Custom Roles**: Define and manage custom user roles with specific permissions. +- **Authentication Providers**: Configure multiple external authentication providers to suit organizational needs. +- **Access Policies**: Establish detailed access control policies for API endpoints. +- **User Management**: Customize user management workflows, including self-registration and admin approval processes. + +## Integration and Extensibility + +The module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Integrate with national and regional health information systems. +- **API Access**: Provide RESTful APIs for user and access management. +- **Modular Design**: Extend functionalities by integrating additional microservices as needed. + +## Conclusion + +The User Authentication Module of the Health Composable Platform offers a robust and flexible solution for managing user identities and access control. +Its comprehensive features and configurability empower healthcare organizations to maintain secure and efficient user management practices. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Authentication Service Documentation](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/overview) +- [Auth0 Client Documentation](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/overview) +- [Authorization Service Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/authorization-service/overview) +- [User Manager Service Documentation](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/overview) +- [Login Site Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/dev_portal/authentication_configuration) diff --git a/versioned_docs/version-2.0.x/hcp/overview.md b/versioned_docs/version-2.0.x/hcp/overview.md new file mode 100644 index 0000000000..2b02c1d297 --- /dev/null +++ b/versioned_docs/version-2.0.x/hcp/overview.md @@ -0,0 +1,140 @@ +--- +id: overview +title: What is HCP? +sidebar_label: What is HCP? +--- + +# What is HCP? + +**HCP (Health Composable Platform)** is a modular digital health platform built using plugins from **Mia Care** and **Mia Platform**. It enables healthcare providers, especially those operating in long-term care facilities like, to create secure, scalable, and interoperable digital ecosystems for patient management. + +The platform leverages a **composable architecture**, meaning that it is built from independent, interchangeable modules. Each module focuses on a specific aspect of healthcare management, allowing organizations to tailor the solution to their needs while maintaining full interoperability across components. + +--- + +## Why HCP? + +Modern healthcare environments are increasingly complex and data-driven. HCP addresses the key challenges faced by care providers: + +- Fragmented patient data spread across disconnected systems +- Manual and error-prone workflows +- Inadequate coordination among care teams +- Security and compliance burdens + +HCP offers a **unified, flexible, and secure** platform to streamline healthcare operations, ensure continuity of care, and improve patient outcomes. + +--- + +## Modular Architecture of HCP + +Each HCP module can operate independently or be integrated with others to form a comprehensive solution. Here's a breakdown of the key modules: + +--- + +### 🏥 EHR – Electronic Health Record + +A **centralized system for managing patient clinical data**. The EHR module serves as the core of the HCP ecosystem by aggregating medical data from multiple sources into a structured and unified format. + +**Key Features:** +- Aggregation of health data from labs, devices, and third-party systems +- Patient summary views, including history, diagnoses, allergies, and treatments +- Support for FHIR (Fast Healthcare Interoperability Resources) standards +- Integration with clinical decision support tools + +**Benefits:** +- Improves data accessibility for care teams +- Reduces duplication and administrative overhead +- Enables longitudinal views of patient health + +--- + +### 🩺 Therapy and Monitoring + +This module enables **monitoring and management of ongoing therapies**, integrating both manual data entry and automatic data collection from medical devices. + +**Key Features:** +- Therapy prescription and scheduling +- Real-time data collection via connected devices (e.g., vitals monitors) +- Manual data entry by caregivers or medical staff +- Alerts and thresholds for abnormal readings +- Visualization of health trends over time + +**Benefits:** +- Enables proactive care with continuous monitoring +- Reduces errors in administering therapies +- Enhances patient safety and adherence to treatment plans + +--- + +### 🔐 User Auth Module + +Manages **user identity, access control, and role-based permissions**, ensuring that each operator or healthcare professional has the appropriate level of access to sensitive information. + +**Key Features:** +- User registration and login +- Role-based access control (RBAC) +- Single Sign-On (SSO) support +- Audit trails and access logs + +**Benefits:** +- Strengthens security and privacy compliance (e.g., GDPR, HIPAA) +- Simplifies access for multidisciplinary teams +- Prevents unauthorized access to sensitive data + +--- + +### 📅 Booking Module + +Supports the **scheduling and coordination of medical appointments**, improving efficiency in managing resources like doctors, rooms, and equipment. + +**Key Features:** +- Calendar-based appointment scheduling +- Availability management for professionals and facilities +- Support for recurring appointments +- Notifications and reminders for staff and patients + +**Benefits:** +- Reduces no-shows and missed appointments +- Improves resource utilization +- Enhances patient experience and care continuity + +--- + +### 🔔 Notification Module + +Enables **multi-channel communication** for timely and effective coordination between healthcare professionals and patients. + +**Key Features:** +- Configurable notification workflows (triggers and actions) +- Support for email, SMS, and voice messages +- Custom templates for different events (e.g., appointment reminders, alerts) +- Integration with external messaging providers + +**Benefits:** +- Improves communication within care teams +- Keeps patients and families informed +- Automates routine messaging and reduces manual work + +--- + +## Built for Interoperability and Scalability + +HCP is designed to integrate easily with third-party systems and national/regional health services. The use of open standards and APIs ensures: + +- Seamless data exchange +- Support for regional EHR repositories +- Compliance with healthcare data regulations + +Scalable by design, HCP can serve both small care facilities and large healthcare networks, adapting to evolving organizational needs. + +--- + +## Summary + +HCP provides a **future-proof foundation** for delivering connected, patient-centered care. With its composable architecture, healthcare providers can: + +- Digitally transform care operations +- Improve patient outcomes and staff efficiency +- Maintain security and compliance at all times + +Whether you're modernizing an existing infrastructure or building a digital health solution from scratch, **HCP offers the flexibility, power, and trustworthiness needed in today’s healthcare landscape**. diff --git a/versioned_docs/version-2.1.x/hcp/architectures.md b/versioned_docs/version-2.1.x/hcp/architectures.md new file mode 100644 index 0000000000..af7d1b417b --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/architectures.md @@ -0,0 +1,113 @@ +--- +id: architectures +title: Architecture Strategies +sidebar_label: Architecture Strategies +--- + +# 🧩 Combining HCP Modules: Architecture Strategies + +## Overview + +The Health Composable Platform (HCP) is built around a modular architecture that enables flexible composition of features. Each module—such as EHR, Therapy and Monitoring, User Authentication, Booking, and Notification—is composed of a set of microservices designed to be **independent and reusable**. + +Depending on the organizational and technical context, modules can be deployed in two different architectural strategies: + +1. **Isolated Modules in Separate Kubernetes Namespaces** +2. **Unified Deployment in a Single Kubernetes Namespace** + +This document outlines both approaches and provides a comparison to help you choose the right setup for your needs. + +--- + +## 1 Isolated Modules in Separate Kubernetes Namespaces + +### 🏗️ Description + +In this model, each module is deployed into its **own Kubernetes namespace**. It includes: + +- A **dedicated API Gateway** for routing requests specific to the module. +- A **dedicated CRUD Service** for managing persistence related to that module's data. +- Its own business-specific microservices and configurations. + +This model emphasizes **separation of concerns** and **domain isolation**. + +### ✅ Pros + +| Benefit | Description | +|--------|-------------| +| 🔒 **Security** | Each namespace can have its own access controls, limiting surface area and blast radius. | +| 🧩 **Modularity** | Modules are fully decoupled, making them easier to develop, test, and deploy independently. | +| 🛠️ **Scalability** | You can scale individual modules based on usage (e.g., scale EHR separately from Notifications). | +| 🧪 **Resilience** | Faults or failures in one module do not impact others. | +| 🔁 **Reusability** | Modules can be reused across multiple projects or customers in an isolated fashion. | + +### ❌ Cons + +| Limitation | Description | +|-----------|-------------| +| ⚙️ **Operational Complexity** | Requires managing multiple gateways, CRUD services, and namespaces. | +| 💰 **Resource Overhead** | More services running in parallel means higher infrastructure costs. | +| 📡 **Cross-Module Communication** | Interactions between modules may require explicit service mesh configurations or gateway routing. | + +--- + +## 2 Unified Deployment in a Single Kubernetes Namespace + +### 🏗️ Description + +In this strategy, all module components are deployed into a **single Kubernetes namespace**. It includes: + +- A **shared API Gateway** that exposes all the APIs across modules. +- A **shared CRUD Service** that interfaces with all databases or collections. +- All module-specific microservices running side by side. + +This setup is often used in simpler deployments or early development stages. + +### ✅ Pros + +| Benefit | Description | +|--------|-------------| +| 🚀 **Simplicity** | Easier to configure, deploy, and monitor as everything is centralized. | +| 💸 **Cost-Effective** | Reduces infrastructure footprint by consolidating common services like the API Gateway and CRUD. | +| 📦 **Faster Setup** | Ideal for proof-of-concepts, demos, or environments with limited DevOps resources. | +| 🧍‍♂️ **Easier Management** | Fewer components to manage and maintain. | + +### ❌ Cons + +| Limitation | Description | +|-----------|-------------| +| ⚠️ **Tight Coupling** | Makes it harder to evolve or deploy modules independently. | +| 🔐 **Security Risks** | Less granularity in access control—risk of overexposure if RBAC isn’t strictly enforced. | +| 🧪 **Lack of Isolation** | Bugs or issues in one module may affect the others. | +| 🧱 **Scalability Limitations** | All modules scale together, which may lead to inefficiencies. | + +--- + +## Choosing the Right Strategy + +| Use Case | Recommended Strategy | +|----------|----------------------| +| **Large-scale or multi-tenant deployment** | Isolated namespaces | +| **Independent team development per module** | Isolated namespaces | +| **Simple or MVP-level application** | Single namespace | +| **Tight DevOps control or low resource environment** | Single namespace | +| **Projects requiring strong fault isolation** | Isolated namespaces | + +--- + +## Transitioning from Unified to Isolated + +It's common to **start with a unified namespace** during the initial phases of development and later **migrate to an isolated namespace strategy** as the platform grows. The modular design of HCP makes this transition smooth, as services are already defined independently. + +--- + +## Architecture Examples + +### Isolated Namespaces Example + +![Isolated Namespaces](./img/svg-files/hcp.modules.svg) + +### Unified Namespace Example + +![Unified Namespace](./img/svg-files/hcp.unique.svg) + diff --git a/versioned_docs/version-2.1.x/hcp/img/drawio-files/hcp.modules.drawio b/versioned_docs/version-2.1.x/hcp/img/drawio-files/hcp.modules.drawio new file mode 100644 index 0000000000..2f247d214c --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/img/drawio-files/hcp.modules.drawio @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/versioned_docs/version-2.1.x/hcp/img/drawio-files/hcp.unique.drawio b/versioned_docs/version-2.1.x/hcp/img/drawio-files/hcp.unique.drawio new file mode 100644 index 0000000000..e94050fcef --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/img/drawio-files/hcp.unique.drawio @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/versioned_docs/version-2.1.x/hcp/img/svg-files/hcp.modules.svg b/versioned_docs/version-2.1.x/hcp/img/svg-files/hcp.modules.svg new file mode 100644 index 0000000000..ebe53e6739 --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/img/svg-files/hcp.modules.svg @@ -0,0 +1,4 @@ + + + +
Form Service Backend
Form Service Frontend
Device Manager
Therapy and Monitoring  Manager
Therapy and Monitoring
Authentication Service 
Auth0 Client
User Manager Service
Auth User Module
Authorization Service
Login Site
Appointment Manager
Teleconsultation Service Backend
Booking Module
Teleconsultation Service Frontend
Notification Manager
Mail Service
Notification Module
SMS Service
Email Builder
Timer Service
Files Service
API Gateway
CRUD Service
API Gateway
CRUD Service
API Gateway
CRUD Service
CRUD Service
API Gateway
Electronic Health Record
Fhir Adapter
Fhir Server
CRUD Service
API Gateway
\ No newline at end of file diff --git a/versioned_docs/version-2.1.x/hcp/img/svg-files/hcp.unique.svg b/versioned_docs/version-2.1.x/hcp/img/svg-files/hcp.unique.svg new file mode 100644 index 0000000000..1afc37660d --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/img/svg-files/hcp.unique.svg @@ -0,0 +1,4 @@ + + + +
Form Service Backend
Form Service Frontend
Device Manager
Therapy and Monitoring  Manager
Authentication Service 
Auth0 Client
User Manager Service
Authorization Service
Login Site
Appointment Manager
Teleconsultation Service Backend
Teleconsultation Service Frontend
Notification Manager
Mail Service
SMS Service
Email Builder
Timer Service
Files Service
CRUD Service
Fhir Adapter
Fhir Server
API Gateway
Health Composable Platform
\ No newline at end of file diff --git a/versioned_docs/version-2.1.x/hcp/modules/booking.md b/versioned_docs/version-2.1.x/hcp/modules/booking.md new file mode 100644 index 0000000000..32723145cf --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/modules/booking.md @@ -0,0 +1,99 @@ +--- +id: booking +title: Booking Module +sidebar_label: Booking Module +--- + +# 📅 Booking Module + +## Overview + +The **Booking Module** is a key component of the Health Composable Platform (HCP), designed to manage appointments between users of the platform, such as patients, doctors, and other resources. It enables the creation of availability slots, the management of exceptions (e.g., vacations or illnesses), and the booking of appointments. Additionally, it supports the creation of teleconsultations through integration with video conferencing services. + +## Key Features + +- **Appointment Management**: Create, update, and delete appointments between users. +- **Availability Slots**: Define time slots available for booking, including exception periods. +- **Resource Booking**: Reserve resources such as doctors, rooms, or medical equipment. +- **Teleconsultation**: Create and manage virtual rooms for remote consultations. + +## Microservices Architecture + +The Booking Module consists of several microservices working together to provide all the needed functionalities: + +### 1. Appointment Manager + +The **Appointment Manager** microservice is responsible for managing appointments, availability slots, and exceptions. It supports two operational modes: + +- **Appointments Mode**: Direct appointment management without setting up availability. +- **Full Mode**: Complete management with availability configuration, exceptions, and slot-based appointment booking. + +**Main Capabilities:** + +- CRUD operations for appointments +- Availability and time slot definition +- Exception handling (e.g., holidays, sick leave) +- Integration with notification systems for appointment reminders + +**Documentation:** + +- [Appointment Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/overview) +- [Appointment Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/usage) +- [Appointment Manager Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/configuration) + +### 2. Teleconsultation Service Backend + +The **Teleconsultation Service Backend** acts as a Backend For Frontend (BFF) for the teleconsultation service. It manages the creation, update, and deletion of teleconsultation sessions and integrates with the Kaleyra SaaS platform for video conferencing. + +**Main Capabilities:** + +- Create, update, and delete teleconsultation sessions +- Integration with Kaleyra for video calls +- Support for call features like chat, whiteboard, screen sharing, and file upload + +**Documentation:** + +- [Teleconsultation Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/teleconsultation-service-backend/overview) +- [Teleconsultation Service Backend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-backend/configuration) + +### 3. Teleconsultation Service Frontend + +The **Teleconsultation Service Frontend** provides the user interface for teleconsultations. It embeds the video conferencing interface via an iframe and includes a set of tools to improve the remote visit experience. + +**Main Capabilities:** + +- Visual interface for remote consultations +- Tools such as chat, whiteboard, screen sharing, and file upload +- Multi-language support (English and Italian) + +**Documentation:** + +- [Teleconsultation Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/overview) +- [Teleconsultation Service Frontend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/configuration) + +## Configuration and Customization + +The Booking Module is highly configurable and can be adapted to fit the specific needs of any healthcare organization: + +- **Role and Permission Management**: Customize user roles and access levels for appointment management. +- **Integration with External Systems**: Connect to external systems for resource and notification management. +- **UI Customization**: Adapt the teleconsultation interface to align with your organization's branding. + +## Integration and Interoperability + +The Booking Module is designed for seamless integration with other HCP modules and third-party systems: + +- **Interoperability**: Connect with national and regional healthcare information systems. +- **API Access**: Expose RESTful APIs for appointment and teleconsultation management. +- **Modular Design**: Extend functionality by integrating additional microservices as needed. + +## Conclusion + +The **Booking Module** of the Health Composable Platform offers a complete and flexible solution for managing healthcare appointments and teleconsultations. Its modular architecture and wide range of configuration options allow healthcare organizations to optimize resource management and improve patient experience. + +**Further Reading:** + +- [Booking Module Overview](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/booking-module/overview) +- [Appointment Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/appointment-manager/overview) +- [Teleconsultation Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/teleconsultation-service-backend/overview) +- [Teleconsultation Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/teleconsultation-service-frontend/overview) diff --git a/versioned_docs/version-2.1.x/hcp/modules/ehr.md b/versioned_docs/version-2.1.x/hcp/modules/ehr.md new file mode 100644 index 0000000000..2b83d6703e --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/modules/ehr.md @@ -0,0 +1,138 @@ +--- +id: ehr +title: Electronic Health Record +sidebar_label: Electronic Health Record +--- + +# 🏥 EHR Module – Electronic Health Record + +## Overview + +The **Electronic Health Record (EHR)** module serves as the central hub for managing patient clinical data within the Health Composable Platform (HCP). +It provides a unified, structured, and interoperable system that aggregates information from various sources, ensuring a comprehensive view of each patient's medical history. +Designed with modularity and scalability in mind, the EHR module facilitates seamless integration with other healthcare systems and standards, notably HL7 FHIR. + +## Key Features + +- **Centralized Data Management**: Consolidates patient information from multiple systems into a single, accessible record. +- **Standards Compliance**: Supports healthcare interoperability standards like FHIR (Fast Healthcare Interoperability Resources). +- **Real-Time Updates**: Ensures that patient data is current, facilitating timely clinical decisions. +- **Role-Based Access Control**: Maintains data security by restricting access based on user roles. +- **Audit Trails**: Keeps detailed logs of data access and modifications for compliance and monitoring purposes. + +## Microservices Architecture + +The EHR module is composed of several microservices that work in tandem to provide robust and flexible healthcare data management: + +### 1. Form Service Backend + +The **Form Service Backend** acts as the backend-for-frontend (BFF) for the form management system. +It handles API requests related to form creation, retrieval, submission, and versioning. + +**Key Capabilities:** + +- Form Schema Management: Create, update, and retrieve form templates. +- Form Submission Handling: Manage user-submitted data, including drafts and final submissions. +- Versioning Support: Maintain multiple versions of form data for historical reference. +- Export Functionality: Export form data in CSV format for reporting and analysis. + +**Documentation:** + +- [Form Service Backend Overview](https://docs.mia-platform.eu/docs/runtime_suite/form-service-backend/overview) +- [Form Service Backend Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-backend/configuration) + +### 2. Form Service Frontend + +The **Form Service Frontend** provides a user interface for building and visualizing forms. +It leverages [formio.js](https://formio.github.io/formio.js/) to offer a customizable form builder and renderer. + +**Key Capabilities:** + +- Form Builder: Allows users to design custom forms using a drag-and-drop interface. +- Form Visualizer: Enables users to fill out and submit forms. +- Styling Support: Customize the appearance of forms to match organizational branding. +- Integration Options: Can be integrated as a micro-frontend or within a headless CMS. + +**Documentation:** + +- [Form Service Frontend Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-frontend/overview) +- [Form Service Frontend Configuration](https://docs.mia-platform.eu/docs/runtime_suite/form-service-frontend/configuration) + +### 3. FHIR Adapter + +The **FHIR Adapter** enables interoperability between systems that implement the FHIR standard and those that do not. +It allows for the saving and retrieval of FHIR data from a FHIR Server using non-standard JSON payloads, utilizing configurations to map fields between non-standard JSON and standard FHIR JSON formats. + +**Key Capabilities:** + +- Data Mapping: Translate non-standard JSON to FHIR-compliant JSON and vice versa. +- CRUD Operations: Perform create, read, update, and delete operations on FHIR resources. +- Versioning and History: Access historical versions of FHIR resources. +- File Management: Upload and download files associated with FHIR resources. + +**Documentation:** + +- [FHIR Adapter Overview and Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/overview_and_usage) +- [FHIR Adapter Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/configuration) +- [FHIR Adapter File Management](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/files_management) + +### 4. Mia FHIR Server + +The **Mia FHIR Server** is a microservice that fully implements the FHIR standard, based on HAPI FHIR, an open-source Java implementation. +It is responsible for exposing, storing, and validating FHIR resources as defined by the standard. +The server supports HL7 FHIR releases DSTU3, R4, and R5. + +**Key Capabilities:** + +- FHIR Compliance: Full support for FHIR standards and resources. +- RESTful API: Expose FHIR resources via RESTful APIs. +- Web Application and Swagger Interface: User-friendly interfaces for interacting with FHIR resources. +- Versioning and History: Access to specific versions and history of FHIR resources. + +**Documentation:** + +- [Mia FHIR Server Overview and Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/mia-fhir-server/overview_and_usage) +- [Mia FHIR Server Configuration](https://docs.mia-platform.eu/docs/runtime_suite/mia-fhir-server/configuration) + +## Configurability + +The EHR module's form services are highly configurable, allowing healthcare providers to tailor forms to specific clinical needs. + +**Custom Form Creation:** + +- **Anamnesis Forms**: Collect detailed patient medical histories. +- **Therapy Monitoring**: Track ongoing treatments and patient responses. +- **Assessment Tools**: Implement standardized health assessments and scales. + +**Form Assignments:** + +Forms can be assigned to specific users or groups, ensuring that only authorized personnel can access and submit sensitive information. + +**Styling and Theming:** + +Customize the look and feel of forms to align with organizational branding, enhancing user experience and consistency. + +**Version Control:** + +Maintain multiple versions of forms and submissions, enabling historical data analysis and compliance with regulatory requirements. + +## Integration and Extensibility + +The EHR module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Supports integration with national and regional health information systems. +- **API Access**: Provides RESTful APIs for data exchange and system interoperability. +- **Modular Design**: Can be extended with additional microservices to meet evolving healthcare needs. + +## Conclusion + +The EHR module of the Health Composable Platform offers a flexible, secure, and comprehensive solution for managing patient health records. +Its modular architecture, combined with powerful form management capabilities and FHIR integration, empowers healthcare providers to deliver personalized and coordinated care. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Form Service Backend Documentation](https://docs.mia-platform.eu/docs/runtime_suite/form-service-backend/overview) +- [Form Service Frontend Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/form-service-frontend/overview) +- [FHIR Adapter Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/fhir-adapter/overview_and_usage) +- [Mia FHIR Server Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/mia-fhir-server/overview_and_usage) + diff --git a/versioned_docs/version-2.1.x/hcp/modules/notification.md b/versioned_docs/version-2.1.x/hcp/modules/notification.md new file mode 100644 index 0000000000..8f4c932d66 --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/modules/notification.md @@ -0,0 +1,155 @@ +--- +id: notification +title: Notification Module +sidebar_label: Notification Module +--- + +# 🔔 Notification Module + +## Overview + +The **Notification Module** is a core component of the Health Composable Platform (HCP) responsible for managing the communication of time-sensitive and contextual information across multiple channels. It enables the sending of messages such as alerts, reminders, confirmations, and updates to both individual users and user groups via email, SMS, voice calls, WhatsApp, and more. + +This module provides powerful tools to create, manage, and deliver personalized notifications based on system events or scheduled triggers, making it crucial for ensuring effective and timely communication in healthcare scenarios. + +## Key Capabilities + +- **Multi-channel Support**: Deliver messages via email, SMS, voice, WhatsApp, and push notifications. +- **Template-based Messaging**: Easily create reusable and customizable message templates. +- **Event-driven and Scheduled Messaging**: Notifications can be triggered by system events or scheduled in advance. +- **File Attachments**: Support for attaching documents or reports to notifications. +- **Extensive Integrations**: Seamless integration with other HCP modules and third-party providers. + +## Architecture & Microservices + +The Notification Module is composed of several independently deployable microservices. Each is responsible for a specific function within the messaging pipeline: + +--- + +### 1. Notification Manager + +The Notification Manager handles the full lifecycle of a notification: listening to triggering events, resolving templates, routing messages through the appropriate channel, and managing delivery statuses. It can also schedule messages to be sent later and supports user targeting via custom rules. + +**Main Capabilities:** + +- Register and manage notification templates +- Receive and process events from other platform components +- Route messages to the appropriate channel (email, SMS, etc.) +- Integrate with services for scheduling and template rendering + +**Documentation**: +- [Notification Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/notification-manager-service/overview) +- [Notification Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/notification-manager-service/usage) + +--- + +### 2. Mail Service + +This service sends emails using AWS SES or SMTP. It integrates with the File Service to include attachments and supports HTML rendering. + +**Main Capabilities:** + +- Send transactional and scheduled emails +- Handle attachments +- Support CC/BCC and recipient lists + +**Documentation**: +- [Mail Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/ses-mail-notification-service/usage) + +--- + +### 3. SMS Service + +The SMS Service sends messages through providers like Twilio and Kaleyra. It includes safeguards to prevent abuse. + +**Main Capabilities:** + +- Send real-time or scheduled SMS +- Support for multiple providers +- Data validation and sanitation + +**Documentation**: +- [SMS Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/overview) +- [SMS Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/usage) + +--- + +### 4. Email Builder + +This frontend tool allows admins to design and preview email templates via a drag-and-drop interface. + +**Main Capabilities:** + +- Create and manage HTML templates +- Export for use with the Notification Manager + +**Documentation**: +- [Email Builder Overview & Usage](https://docs.mia-platform.eu/docs/runtime_suite/email-builder/overview_and_usage) + +--- + +### 5. Timer Service + +Enables actions like reminders and delayed notifications. + +**Main Capabilities:** + +- Schedule future events +- Manage queues +- Ensure timely delivery + +**Documentation**: +- [Timer Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/timer-service/usage) + +--- + +### 6. Files Service + +Supports notification attachments and secure document handling. + +**Main Capabilities:** + +- Upload and store files +- Retrieve files via API +- Metadata and access management + +**Documentation**: +- [Files Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/files-service/usage) + +--- + +## Configuration & Customization + +The Notification Module can be tailored to your needs: + +- Enable/disable specific channels +- Choose external providers (e.g., AWS SES, Twilio) +- Create role- and language-specific templates +- Schedule recurring or one-time messages + +## Use Cases + +- Appointment confirmations and reminders +- Prescription renewal alerts +- Follow-up care instructions +- Group broadcasts (e.g., staff updates) +- Test result availability +- Emergency and health campaign alerts + +## Integration + +- Event-driven architecture +- RESTful APIs +- Multi-tenant support + +## Conclusion + +The **Notification Module** is a flexible messaging infrastructure for healthcare. It ensures that vital communications—alerts, reminders, results—are delivered through the right channels at the right time, improving both care quality and operational efficiency. + +**Links to Documentation**: +- [Notification Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/notification-manager-service/overview) +- [Mail Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/ses-mail-notification-service/usage) +- [SMS Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/sms-service/overview) +- [Email Builder Overview](https://docs.mia-platform.eu/docs/runtime_suite/email-builder/overview_and_usage) +- [Timer Service Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/timer-service/usage) +- [Files Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/files-service/usage) diff --git a/versioned_docs/version-2.1.x/hcp/modules/therapy-and-monitoring.md b/versioned_docs/version-2.1.x/hcp/modules/therapy-and-monitoring.md new file mode 100644 index 0000000000..7331f3bc27 --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/modules/therapy-and-monitoring.md @@ -0,0 +1,88 @@ +--- +id: therapy-and-monitoring +title: Therapy and Monitoring +sidebar_label: Therapy and Monitoring +--- + +# 🩺 Therapy and Monitoring Module + +## Overview + +The **Therapy and Monitoring Module** is a core component of the Health Composable Platform (HCP) designed to manage patient therapies and monitor health conditions. +It enables healthcare professionals to define therapy plans, monitor patient adherence and compliance, and integrate data from medical and wearable devices such as Apple Watch. +This module ensures a comprehensive approach to patient care by combining therapy management with real-time health data monitoring. + +## Key Features + +- **Therapy Management**: Define and manage therapy plans tailored to individual patient needs. +- **Monitoring Plans**: Set up monitoring protocols to track specific health parameters. +- **Device Integration**: Collect and analyze data from medical devices and wearables. +- **Adherence and Compliance Tracking**: Monitor patient adherence to therapy schedules and compliance with prescribed activities. +- **Notifications**: Configure alerts to notify healthcare providers and patients of critical events or deviations. + +## Microservices Architecture + +The Therapy and Monitoring Module comprises two primary microservices that work in tandem to provide comprehensive therapy and monitoring functionalities: + +### 1. Device Manager + +The **Device Manager** is responsible for collecting, storing, and visualizing patient health data from medical and wearable devices. +It supports integration with providers such as Medisanté and Apple HealthKit, enabling real-time acquisition of health data. + +**Key Capabilities:** + +- **Data Collection**: Acquire health data from various devices and providers. +- **Data Normalization**: Standardize health data formats for consistency and analysis. +- **Integration with Therapy and Monitoring Manager**: Forward relevant health data to the Therapy and Monitoring Manager for inclusion in monitoring plans. + +**Documentation:** + +- [Device Manager Overview](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/overview) +- [Device Manager Usage](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/usage) +- [Device Manager Configuration](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/configuration) + +### 2. Therapy and Monitoring Manager (TMM) + +The **Therapy and Monitoring Manager** enables healthcare professionals to manage patient therapies and monitor health conditions, adherence, and compliance. +It allows the definition of thresholds and the sending of notifications to alert involved parties of events occurring during the therapy and monitoring period. + +**Key Capabilities:** + +- **Therapy and Monitoring Plan Management**: Create and manage therapy and monitoring plans with defined start and end dates, associated doctors and patients, and specific prototypes for validation. +- **Detection Handling**: Process patient-entered data (detections) to assess adherence and compliance. +- **Notification System**: Send alerts based on predefined thresholds and patient data entries. + +**Documentation:** + +- [Therapy and Monitoring Manager Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/overview) +- [Therapy and Monitoring Manager Usage](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/usage) +- [Therapy and Monitoring Manager Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/configuration) + +## Configurability + +The module offers extensive configurability to cater to diverse healthcare needs: + +- **Custom Prototypes**: Define validation schemas (prototypes) for detections to ensure data integrity. +- **Threshold Settings**: Set thresholds for health parameters to trigger notifications. +- **Device Enrollment**: Manually or automatically enroll devices for data collection. +- **Notification Channels**: Configure multiple channels (email, SMS, etc.) for sending alerts. + +## Integration and Extensibility + +The Therapy and Monitoring Module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Supports integration with national and regional health information systems. +- **API Access**: Provides RESTful APIs for data exchange and system interoperability. +- **Modular Design**: Can be extended with additional microservices to meet evolving healthcare needs. + +## Conclusion + +The Therapy and Monitoring Module of the Health Composable Platform offers a robust and flexible solution for managing patient therapies and monitoring health conditions. +Its integration capabilities with medical devices and wearables, combined with comprehensive configurability, empower healthcare providers to deliver personalized and proactive care. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Device Manager Documentation](https://docs.mia-platform.eu/docs/runtime_suite/device-manager/overview) +- [Therapy and Monitoring Manager Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/therapy-and-monitoring-manager/overview) + +> _Note: The information provided here is based on the official Mia-Platform documentation as of the latest available versions. For the most up-to-date details, please consult the official documentation links provided above._ diff --git a/versioned_docs/version-2.1.x/hcp/modules/user-auth.md b/versioned_docs/version-2.1.x/hcp/modules/user-auth.md new file mode 100644 index 0000000000..9a4f5b3b04 --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/modules/user-auth.md @@ -0,0 +1,137 @@ +--- +id: user-auth +title: User Auth Module +sidebar_label: User Auth Module +--- + +# 🔐 User Authentication Module + +## Overview + +The **User Authentication Module** is a fundamental component of the Health Composable Platform (HCP) designed to manage user accounts and access control across the platform. +It facilitates the registration and management of various user roles, such as administrators, doctors, and patients, each customizable to fit specific organizational needs. +The module supports authentication through multiple external providers and manages API access permissions for different user groups. + +## Key Features + +- **Role Management**: Define and customize user roles (e.g., administrators, doctors, patients) to align with organizational structures. +- **Authentication Providers**: Support for multiple external authentication providers, including GitLab, GitHub, Okta, Microsoft AD, and Microsoft AD B2C. +- **Authorization Control**: Manage API access permissions based on user roles and groups. +- **User Management**: Handle user creation, updates, deletions, and role assignments. +- **Login Interface**: Provide a user-friendly login interface with support for redirects and session management. + +## Microservices Architecture + +The User Authentication Module comprises several microservices that work together to provide comprehensive authentication and authorization functionalities: + +### 1. Authentication Service + +The **Authentication Service** is responsible for handling the authentication process using various OAuth2 providers. +It supports the `authorization_code` and `password` grant types and provides endpoints for user login and information retrieval. + +**Key Capabilities:** + +- Support for multiple OAuth2 providers +- Endpoints for user authorization and information retrieval +- Integration with external identity providers + +**Documentation:** + +- [Authentication Service Overview](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/overview) +- [Authentication Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/usage) +- [Authentication Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/configuration) + +### 2. Auth0 Client + +The **Auth0 Client** serves as an alternative to the Authentication Service, interfacing with Auth0 for authentication processes. +It acts as a token broker, securely handling tokens between the frontend application and Auth0. + +**Key Capabilities:** + +- Integration with Auth0 for authentication +- Secure token handling and session management +- User management through Auth0's API + +**Documentation:** + +- [Auth0 Client Overview](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/overview) +- [Auth0 Client Usage](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/usage) +- [Configure Auth0](https://docs.mia-platform.eu/docs/next/runtime_suite/auth0-client/configure_auth0) + +### 3. Authorization Service + +The **Authorization Service** manages access control by validating requests against defined policies. +It determines whether a request should be authorized based on the user's roles and permissions. + +**Key Capabilities:** + +- Policy-based access control +- Validation of user permissions for API requests +- Integration with the API Gateway for request authorization + +**Documentation:** + +- [Authorization Service Overview](https://docs.mia-platform.eu/docs/next/runtime_suite/authorization-service/overview) +- [Authorization Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/authorization-service/configuration) + +### 4. User Manager Service + +The **User Manager Service** handles user account management, including creation, updates, deletions, and role assignments. +It works in conjunction with the chosen authentication service to maintain user data consistency. + +**Key Capabilities:** + +- User CRUD operations +- Role and permission assignments +- Synchronization with authentication services + +**Documentation:** + +- [User Manager Service Overview](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/overview) +- [User Manager Service Usage](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/usage) +- [User Manager Service Configuration](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/configuration) + +### 5. Login Site + +The **Login Site** provides the user interface for authentication, handling login flows and redirects. +It integrates with the authentication services to facilitate user login and session management. + +**Key Capabilities:** + +- User-friendly login interface +- Support for redirects and session handling +- Integration with authentication services for login flows + +**Documentation:** + +- [Login Site Authentication Configuration](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/dev_portal/authentication_configuration) + +## Configurability + +The User Authentication Module offers extensive configurability to meet diverse organizational requirements: + +- **Custom Roles**: Define and manage custom user roles with specific permissions. +- **Authentication Providers**: Configure multiple external authentication providers to suit organizational needs. +- **Access Policies**: Establish detailed access control policies for API endpoints. +- **User Management**: Customize user management workflows, including self-registration and admin approval processes. + +## Integration and Extensibility + +The module is designed for seamless integration with other HCP modules and external systems: + +- **Interoperability**: Integrate with national and regional health information systems. +- **API Access**: Provide RESTful APIs for user and access management. +- **Modular Design**: Extend functionalities by integrating additional microservices as needed. + +## Conclusion + +The User Authentication Module of the Health Composable Platform offers a robust and flexible solution for managing user identities and access control. +Its comprehensive features and configurability empower healthcare organizations to maintain secure and efficient user management practices. + +For more detailed information, refer to the official Mia-Platform documentation: + +- [Authentication Service Documentation](https://docs.mia-platform.eu/docs/runtime_suite/authentication-service/overview) +- [Auth0 Client Documentation](https://docs.mia-platform.eu/docs/runtime_suite/auth0-client/overview) +- [Authorization Service Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite/authorization-service/overview) +- [User Manager Service Documentation](https://docs.mia-platform.eu/docs/runtime_suite/user-manager-service/overview) +- [Login Site Documentation](https://docs.mia-platform.eu/docs/next/runtime_suite_applications/dev_portal/authentication_configuration) diff --git a/versioned_docs/version-2.1.x/hcp/overview.md b/versioned_docs/version-2.1.x/hcp/overview.md new file mode 100644 index 0000000000..2b02c1d297 --- /dev/null +++ b/versioned_docs/version-2.1.x/hcp/overview.md @@ -0,0 +1,140 @@ +--- +id: overview +title: What is HCP? +sidebar_label: What is HCP? +--- + +# What is HCP? + +**HCP (Health Composable Platform)** is a modular digital health platform built using plugins from **Mia Care** and **Mia Platform**. It enables healthcare providers, especially those operating in long-term care facilities like, to create secure, scalable, and interoperable digital ecosystems for patient management. + +The platform leverages a **composable architecture**, meaning that it is built from independent, interchangeable modules. Each module focuses on a specific aspect of healthcare management, allowing organizations to tailor the solution to their needs while maintaining full interoperability across components. + +--- + +## Why HCP? + +Modern healthcare environments are increasingly complex and data-driven. HCP addresses the key challenges faced by care providers: + +- Fragmented patient data spread across disconnected systems +- Manual and error-prone workflows +- Inadequate coordination among care teams +- Security and compliance burdens + +HCP offers a **unified, flexible, and secure** platform to streamline healthcare operations, ensure continuity of care, and improve patient outcomes. + +--- + +## Modular Architecture of HCP + +Each HCP module can operate independently or be integrated with others to form a comprehensive solution. Here's a breakdown of the key modules: + +--- + +### 🏥 EHR – Electronic Health Record + +A **centralized system for managing patient clinical data**. The EHR module serves as the core of the HCP ecosystem by aggregating medical data from multiple sources into a structured and unified format. + +**Key Features:** +- Aggregation of health data from labs, devices, and third-party systems +- Patient summary views, including history, diagnoses, allergies, and treatments +- Support for FHIR (Fast Healthcare Interoperability Resources) standards +- Integration with clinical decision support tools + +**Benefits:** +- Improves data accessibility for care teams +- Reduces duplication and administrative overhead +- Enables longitudinal views of patient health + +--- + +### 🩺 Therapy and Monitoring + +This module enables **monitoring and management of ongoing therapies**, integrating both manual data entry and automatic data collection from medical devices. + +**Key Features:** +- Therapy prescription and scheduling +- Real-time data collection via connected devices (e.g., vitals monitors) +- Manual data entry by caregivers or medical staff +- Alerts and thresholds for abnormal readings +- Visualization of health trends over time + +**Benefits:** +- Enables proactive care with continuous monitoring +- Reduces errors in administering therapies +- Enhances patient safety and adherence to treatment plans + +--- + +### 🔐 User Auth Module + +Manages **user identity, access control, and role-based permissions**, ensuring that each operator or healthcare professional has the appropriate level of access to sensitive information. + +**Key Features:** +- User registration and login +- Role-based access control (RBAC) +- Single Sign-On (SSO) support +- Audit trails and access logs + +**Benefits:** +- Strengthens security and privacy compliance (e.g., GDPR, HIPAA) +- Simplifies access for multidisciplinary teams +- Prevents unauthorized access to sensitive data + +--- + +### 📅 Booking Module + +Supports the **scheduling and coordination of medical appointments**, improving efficiency in managing resources like doctors, rooms, and equipment. + +**Key Features:** +- Calendar-based appointment scheduling +- Availability management for professionals and facilities +- Support for recurring appointments +- Notifications and reminders for staff and patients + +**Benefits:** +- Reduces no-shows and missed appointments +- Improves resource utilization +- Enhances patient experience and care continuity + +--- + +### 🔔 Notification Module + +Enables **multi-channel communication** for timely and effective coordination between healthcare professionals and patients. + +**Key Features:** +- Configurable notification workflows (triggers and actions) +- Support for email, SMS, and voice messages +- Custom templates for different events (e.g., appointment reminders, alerts) +- Integration with external messaging providers + +**Benefits:** +- Improves communication within care teams +- Keeps patients and families informed +- Automates routine messaging and reduces manual work + +--- + +## Built for Interoperability and Scalability + +HCP is designed to integrate easily with third-party systems and national/regional health services. The use of open standards and APIs ensures: + +- Seamless data exchange +- Support for regional EHR repositories +- Compliance with healthcare data regulations + +Scalable by design, HCP can serve both small care facilities and large healthcare networks, adapting to evolving organizational needs. + +--- + +## Summary + +HCP provides a **future-proof foundation** for delivering connected, patient-centered care. With its composable architecture, healthcare providers can: + +- Digitally transform care operations +- Improve patient outcomes and staff efficiency +- Maintain security and compliance at all times + +Whether you're modernizing an existing infrastructure or building a digital health solution from scratch, **HCP offers the flexibility, power, and trustworthiness needed in today’s healthcare landscape**. diff --git a/versioned_sidebars/version-2.0.x-sidebars.json b/versioned_sidebars/version-2.0.x-sidebars.json index d16a07d85a..daf025cb42 100644 --- a/versioned_sidebars/version-2.0.x-sidebars.json +++ b/versioned_sidebars/version-2.0.x-sidebars.json @@ -100,5 +100,48 @@ "label": "Frequently Asked Questions (FAQs)", "type": "doc" } + ], + "Health Composable Platform": [ + { + "id": "hcp/overview", + "label": "What is HCP?", + "type": "doc" + }, + { + "label": "Modules", + "type": "category", + "items": [ + { + "id": "hcp/modules/ehr", + "label": "Electronic Health Record", + "type": "doc" + }, + { + "id": "hcp/modules/therapy-and-monitoring", + "label": "Therapy and Monitoring", + "type": "doc" + }, + { + "id": "hcp/modules/user-auth", + "label": "User Auth Module", + "type": "doc" + }, + { + "id": "hcp/modules/booking", + "label": "Booking Module", + "type": "doc" + }, + { + "id": "hcp/modules/notification", + "label": "Notification Module", + "type": "doc" + } + ] + }, + { + "id": "hcp/architectures", + "label": "Architecture Strategies", + "type": "doc" + } ] } diff --git a/versioned_sidebars/version-2.1.x-sidebars.json b/versioned_sidebars/version-2.1.x-sidebars.json index 080cafa2d3..a6199955d2 100644 --- a/versioned_sidebars/version-2.1.x-sidebars.json +++ b/versioned_sidebars/version-2.1.x-sidebars.json @@ -115,5 +115,48 @@ "label": "Frequently Asked Questions (FAQs)", "type": "doc" } + ], + "Health Composable Platform": [ + { + "id": "hcp/overview", + "label": "What is HCP?", + "type": "doc" + }, + { + "label": "Modules", + "type": "category", + "items": [ + { + "id": "hcp/modules/ehr", + "label": "Electronic Health Record", + "type": "doc" + }, + { + "id": "hcp/modules/therapy-and-monitoring", + "label": "Therapy and Monitoring", + "type": "doc" + }, + { + "id": "hcp/modules/user-auth", + "label": "User Auth Module", + "type": "doc" + }, + { + "id": "hcp/modules/booking", + "label": "Booking Module", + "type": "doc" + }, + { + "id": "hcp/modules/notification", + "label": "Notification Module", + "type": "doc" + } + ] + }, + { + "id": "hcp/architectures", + "label": "Architecture Strategies", + "type": "doc" + } ] }