Hospital Management System
This project is a high-performance C#/.NET 8.0 console application that elevates a standard Hospital Management System into a deeply engineered backend solution. Designed with a clean state machine page navigation architecture, the system enforces Role-Based Access Control (RBAC) across four distinct roles: Administrator, Doctor, Patient, and Receptionist.
Key architectural features include:
- Responsive Console UI: Implements a custom background thread monitoring console window scaling to dynamically re-render a matrix-based box-drawing UI, custom tables with zebra-striping, and text hyphenation without layout breaking.
- Data Persistence & LINQ Queries: Utilizes System.Text.Json for lightweight file-based storage, leveraging advanced LINQ joins and distinct queries to simulate relational database operations.
- Asynchronous & Multi-threaded Processing: Employs non-blocking multi-threading for real-time keyboard inputs during UI updates and isolates SMTP email interactions (sending welcome HTML emails with auto-generated credentials) to background threads.
- State Machine Navigation: Uses a centralized page manager to govern the lifecycle of application views while actively managing memory via explicit garbage collection triggers.
Key features & challenges
- Responsive Console UI with dynamic layout & automatic window scaling detection
- Role-Based Access Control (RBAC) supporting 4 distinct user workflows
- Asynchronous multi-threading for non-blocking UI and SMTP HTML email automation
- JSON-based data persistence with advanced LINQ relational queries
- Clean state machine page navigation architecture
My contributions
- Sole Developer