A Python-based hematology analyzer lis system using PyQT5 GUI
PyQt is a set of Python binding for the Qt Framework from C++ that can be used to create Desktop Graphical User Interfaces. PyQt gives you all the complex functionalities of C++ Qt while allowing swift development in Python.
Hematology Analyzer LIS is a software system that records, manages, updates and stores patient testing data for pathology laboratories, including receiving tests orders, sending orders to laboratory analyzers, tracking orders, results and quality control and transmitting results to print with graphs as pdf or docx.
Pathology analyzer communication supporting serial and network protocols with simulates and data exchange with host system. It will work on any hematology analyzer.
This project fully customizable and dynamic and to build a Python and PyQT5-based desktop application and it's directly connect hematology analyzer with network or serial port communcation and receive data from analyzer then change or edit result and print. Printable report generated or design by python package reportlab library or use Microsoft Office Docx file. You can add pathologist information, doctor information with signature. Everyday create report folder with file name is current date and printed result stored as pdf. Already 100+ Diagnostic Medical Center or Hospital use this. Here are some special features added.
- Hematology Analyzer LIS v2023.x (Last updated-17.02.2025)
- Add image as theme wallpaper
- Change any theme color
- Change report font color
- Live data receive from analyzer
- Use docx file template for result
- Send/Receive data from database or server using API/Local
This project was developed using the latest operating systems, software, and tools.
- Operating System : Windows7, Windows10, Windows11, Kali Linux2022.4 and MacOS Sierra 10.12
- Software : Python3.11 and Visual Studio Code
- System Type : 32-bit and 64-bit
- Analyzer Company : ExcBio, Hermes, Dymind, Genrui, Sysmex, Beckman Coulter, Arrows, Zybio, BioElab, Mindray, Erba etc as tested.
- Database : SQLite3, MySQL Server, MongoDB etc.
First download, install and configure python. Then use the package manager pip to install on.
- Windows installation
- Kali linux installation
- Mac installation
The requirements.txt file, lists of all the Python libraries that my "hematology analyzer lis system" depends on and installs those packages from the file and for better use, configure the system by looking at the notes.txt name file:
pip install -r requirements.txt
# or
sudo pip install -r requirements.txtHere are some screenshots of the Hematology Analyzer LISv1 project:
Main Window

Admin Page

Login Page

Change Login System

Settings Page

Extra Settings Page

Pathologist Setup

Doctor Setup

Reference value Setup Page

API Setup

Report Page

Machine Result

Statement Page

With Histogram-Reportlab

Without Histogram-Reportlab

With Histogram-Docx

Without Histogram-Docx

Report Folder

Code Snapshot

Contributions, suggestions, and feedback are always welcome! ❤️ To contribute:
- Fork the repository
- Create a new branch (
feature/new-feature) - Commit your changes
- Push and submit a Pull Request
💬 You can also open an issue if you’d like to discuss a feature or report a bug.
The MIT License (MIT)
“Good design is about making things simple yet significant”
— Md. Ariful Islam