Skip to content

Jeb4dev/CareGrid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CareGrid - Angular & .Net PoC

.NET 8 Angular 17 MSSQL Docker SignalR

CareGrid on moderni teho-osaston valvontajärjestelmä, joka on suunniteltu visualisoimaan kriittistä potilasdataa reaaliajassa.

Tämä projekti toimii Full Stack -osaaminnäytteenä, jossa demonstroidaan skaalautuvan, mikropalveluhenkisen arkkitehtuurin toteutusta moderneilla Microsoft-teknologioilla ja kontitetulla ympäristöllä.

🎥 Demo

Demo video frontendistä

✨ Tärkeimmät Ominaisuudet

Tämä ei ole vain staattinen sivu, vaan täysin toimiva simulaatiojärjestelmä:

  • ⚡ Reaaliaikainen valvonta: Potilaiden syke ja happisaturaatio (SpO2) päivittyvät käyttöliittymään millisekuntien viiveellä (SignalR).
  • 🚨 Älykäs hälytysjärjestelmä: Järjestelmä tunnistaa automaattisesti raja-arvojen ylitykset ja generoi hälytyksiä.
  • 🎛️ Simulaattori: Backendissä pyörivä itsenäinen moottori generoi elävää dataa ilman manuaalista syöttöä.
  • 📱 Responsiivinen UI: Rakennettu Angular 17:n uusimmilla ominaisuuksilla (Signals) ja Tailwind CSS:llä.

🛠 Tekninen Osaaminen

Projektissa on sovellettu seuraavia teknologioita ja menetelmiä:

Alue Teknologiat & Konseptit
Backend .NET 8 Web API, C# 12, Background Services (Simulaatio), Entity Framework Core 8
Frontend Angular 17 (Standalone, Signals), Tailwind CSS, Chart.js (reaaliaikainen piirto)
Data & Reaaliaikaisuus SignalR (WebSockets), SQL Server, RESTful API suunnittelu
DevOps & Infra Docker, Docker Compose, Multi-container architecture

🏗 Arkkitehtuuri

Järjestelmä on suunniteltu modulaariseksi ja vikasietoiseksi.

Swagger UI

1. Backend (.NET 8)

Palvelin toimii sekä API:na että itsenäisenä simulaattorina.

  • Architecture: Eroteltu logiikka (Services) ja tietokantakerros.
  • Concurrency: ConcurrentDictionary ja säieturvallinen ohjelmointi varmistavat suorituskyvyn suuressa kuormassa.
  • Optimointi: Raakadata striimataan suoraan muistista, kun taas tietokantaan (MSSQL) tallennetaan vain pysyvä historia ja hälytykset.

2. Frontend (Angular)

  • Moderni tilanhallinta: Hyödyntää Angularin uutta Signals-arkkitehtuuria, mikä tekee sovelluksesta nopeamman ja kevyemmän kuin perinteiset ratkaisut.
  • Visualisointi: ng2-charts piirtää liukuvaa aikasarjadataa ilman sivun nykimistä.

🚀 Asennus ja Käyttö

Haluatko kokeilla itse? Projekti on kontitettu, joten et tarvitse .NET-asennusta koneellesi.

  1. Kloonaa repositorio.
  2. Luo .env tiedosto (cp .env.example .env).
  3. Käynnistä Dockerilla:
    docker-compose up --build
  4. Avaa http://localhost:4200

🔌 Rajapinnat (API)

Backend tarjoaa kattavan Swagger-dokumentaation (/swagger) kehitysympäristössä.

  • POST /simulate - Pakota hätätilanne (testaa hälytyslogiikkaa).
  • POST /silence - Hiljennä hälytys (hoitajan kuittaus).

⚠️ Huomioitavaa (POC)

Koska kyseessä on tekninen demo (Proof of Concept):

  • Historia: Sykehistoria pidetään toistaiseksi muistissa (In-Memory). Tuotantoversiossa käytettäisiin aikasarjatietokantaa (esim. InfluxDB).
  • Security: Autentikaatio on jätetty pois, jotta demon ajaminen on vaivatonta.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors