A modern desktop application built with Tauri (Rust) and Vue (TypeScript) for managing tuberculosis (TB) clinic operations. This system bridges HOSxP's MySQL database (read-only) with a local SQLite database for clinic-specific tracking data.
- Drug Screening: Query HOSxP patients who have received TB drugs to identify new patients.
- Active Patients Dashboard: Overview of currently active TB patients with treatment progress and an alert engine tracking patient adherence.
- Patient Details: Full clinical timeline, drug dispensing history, monthly follow-up records, and side-effect tracking.
- Weight-Based Dosage Management: Automated calculation and clinical alerts for TB drug dosage adjustments based on real-time patient weight updates, ensuring optimal treatment efficacy and safety.
- Epidemiological Mapping: Interactive geographic map with disease distribution pinning to visualize patient locations, identify clustering, and support contact tracing or public health interventions.
- Reports: Summary statistics and exportable CSV reports for TB clinic audits (HA Standard).
- Settings: Complete control to configure database connections, update TB drug codes, and export local SQLite backups.
- Frontend: Vue 3.5 (Composition API,
<script setup>), TypeScript 6, Pinia, Vue Router 5, and@lucide/vuefor iconography. - Backend / Desktop: Tauri 2, Rust (stable), and
sqlxdriving database interactions. - Databases:
- MySQL (HOSxP): Read-only access to query patient demographics and their drug dispensing records.
- SQLite: Local, read-write database holding clinic metrics, treatment plans, follow-ups, and statuses.
- Node.js (Version 18+)
- Rust
- Platform Prerequisites for Tauri 2
-
Clone the repository (and switch into the project directory):
git clone https://github.com/suradet-ps/tb-plus.git cd tb-plus -
Install frontend dependencies:
pnpm install
-
Run the development server:
pnpm tauri dev
-
Build for release (generates OS specific execution binary):
pnpm tauri build
This project is licensed under the MIT License.