Π.Γ.Ν. Ιωαννίνων StorageManagement
Volunteer Lead Developer
Desktop app σε Tauri + Rust + React που αντικατέστησε ένα legacy C# WinForms σύστημα παρακολούθησης αντιδραστηρίων και εξοπλισμού στο Πανεπιστημιακό Γενικό Νοσοκομείο Ιωαννίνων. Εθελοντική civic-tech εργασία για ελληνικό δημόσιο νοσοκομείο.
Το σύστημα
Στο Πανεπιστημιακό Γενικό Νοσοκομείο Ιωαννίνων (Π.Γ.Ν.Ι.) ένα από τα εργαστήρια παρακολουθούσε αντιδραστήρια και εξοπλισμό σε ένα legacy C# WinForms application που είχε χρόνια να αγγιχτεί. Το εργαστήριο χρειαζόταν αντικατάσταση που να τρέχει σε Windows, χωρίς να απαιτεί σύνδεση στο internet, και να αποθηκεύει τα δεδομένα τοπικά στο μηχάνημα του εργαστηρίου χωρίς εμπλοκή της IT υπηρεσίας. Ως εθελοντική civic-tech εργασία, έχτισα ένα Tauri 2 + Rust + React 19 desktop app με τοπική SQLite βάση, που διανέμεται ως signed NSIS installer και η IT υπηρεσία του νοσοκομείου μπορεί να εγκαταστήσει μόνη της. Σε production, αντικαθιστώντας το legacy σύστημα.
Αρχιτεκτονική
- Frontend: React 19 + Vite + TanStack Router/Query για το UI
- Backend: Rust μέσω Tauri 2 IPC, όλη η πρόσβαση σε data και filesystem περνά από typed Rust API
- Database: SQLite με Drizzle για schema και migrations, τοπικό στο μηχάνημα
- Distribution: signed NSIS installer για Windows, side-by-side εγκατάσταση δίπλα στο legacy app ώστε το εργαστήριο να αλλάξει με δικό του ρυθμό
- Καμία εξωτερική εξάρτηση: το app τρέχει offline, χωρίς server, χωρίς cloud, χωρίς auth provider
Η συνεισφορά μου
Έχτισα ολόκληρο το app μόνος μου. Η αρχιτεκτονική απόφαση που μέτρησε περισσότερο ήταν η επιλογή του Tauri 2 αντί για Electron: ο πυρήνας του Tauri σε Rust δίνει binary ~12 MB (έναντι 100 MB+ του Electron), ξεκινά σε λιγότερο από ένα δευτερόλεπτο, και το antivirus του νοσοκομείου δεν το σημαδεύει ως ύποπτο όπως κάνει συχνά με Electron apps σε locked-down Windows μηχανήματα. Το Rust backend χειρίζεται κάθε πρόσβαση σε data μέσω αυστηρά typed API surface, οπότε το React frontend δεν αγγίζει ποτέ απευθείας το filesystem — προσθέτει επίπεδο ασφάλειας σε ένα μηχάνημα που το εργαστήριο δεν μπορεί να ξαναεγκαταστήσει εύκολα. Ο NSIS installer είναι signed και εγκαθίσταται side-by-side με το legacy app, ώστε η ομάδα του εργαστηρίου να αλλάξει με δικό της ρυθμό χωρίς να χάσει την πρόσβαση σε ιστορικές εγγραφές.
Αποτελέσματα
- Αντικατέστησε ένα legacy C# WinForms application με σύγχρονο stack
- 12 MB signed Windows binary, τρέχει offline, χωρίς εμπλοκή IT
- NSIS installer που η IT υπηρεσία του νοσοκομείου εγκαθιστά μόνη της
- Εθελοντική συνεισφορά σε ελληνικό δημόσιο νοσοκομείο, σε παραγωγή
Σύνδεσμοι
Παρόμοια έργα
- Γηροκομείο Ζωσιμάδων Healthcare Ops Stack: άλλη εθελοντική civic-tech εργασία για ελληνικό ίδρυμα, αλλά πλήρης ops platform αντί για εργαστηριακό desktop app