Tim Kuijpers |
Medix Hub is a platform where hospital personnel can bring up the clinical picture and history of treatments/surgeries of a patient. This includes all medication used by the patient in their past or present situation(s).
The hospital personnel can also create, delete or update medical data of patients.
Patient data and certain actions are obtainable/executable based on the users role within the system. Examples of roles are:
- Nurse
- Doctor
- GP (General Practitioner)
- Administrator
- SuperAdmin
These following technologies are used the most frequent amount within this project:
The following technologies also contribute to this project:
- Entity Framework
- Snyk
- SonarCloud
- Azure
- K6 by Grafana
- Grafana
- Influx DB
- Proto
- JSON Transcoding
- Postman
- GHZ performance tests
The application has the following endpoints:
HTTP method | API endpoints | Description |
---|---|---|
GET | /api/v1/patient | Get all patients |
GET | /api/v1/patient/{id} | Get patient by ID |
POST | /api/v1/patient | Create patient |
POST | /api/v1/deceased | Declare patient as deceased |
PUT | /api/v1/patient | Update patient |
DELETE | /api/v1/patient/{id} | Delete patient |
GET | /api/v1/report | Get all reports |
GET | /api/v1/report/{id} | Get report by ID |
POST | /api/v1/report | Create report |
PUT | /api/v1/report | Update report |
DELETE | /api/v1/report/{id} | Delete report |
(Upcoming with enterprise KrakenD)
GRCP method | API endpoints | Description |
---|---|---|
GET | /grpc/v1/patient | Get all patients |
GET | /grpc/v1/patient/{id} | Get patient by ID |
POST | /grpc/v1/patient | Create patient |
POST | /grpc/v1/deceased | Declare patient as deceased |
PUT | /grpc/v1/patient | Update patient |
DELETE | /grpc/v1/patient/{id} | Delete patient |
GET | /grpc/v1/report | Get all reports |
GET | /grpc/v1/report/{id} | Get report by ID |
POST | /grpc/v1/report | Create report |
PUT | /grpc/v1/report | Update report |
DELETE | /grpc/v1/report/{id} | Delete report |
- Docker installed + Docker Desktop
- Visual Studio 2022 edition (for all the APIs)
- Visual Studio Code (for the Gateway and Frontend)
git clone https://github.com/your-username/Medix-Hub.git
cd Medix-Hub
Then because of the submodules within the repository you have to init and update those:
git submodule init
git submodule update
- Open Visual Studio 2022 and load the solution for Medix-Hub (this also opens the submodules + their branches).
- Install any necessary dependencies using the package manager or the integrated tools in Visual Studio.
- Navigate to the root directory (Medix-Hub) in the terminal.
- Run the following command:
docker-compose up
- Navigate to the top of Visual Studio 2022 and press the dropdown next to the run button.
- Select docker-compose as your desired option.
- Open Docker Desktop to monitor the containers.
- Ensure that there are no errors or issues with the containers.
- If there are errors, check the logs and troubleshoot accordingly.
- Check each API and Gateway's README files for any specific instructions.
- Configure any environment variables or settings required for local development.
- Execute migrations if the automated process failed.
- Change the docker-image tags in the docker-compose for the desired environment (dev, accept or latest).
Pull requests are not desired. This was a project for school within my study at Fontys HBO-ICT Software engineering.