A PyQt6-based GUI application for analyzing spectrophotometry data from Levensaler Immobilized Metal Chelate Affinity Labelling Assay (LIMCALA)-based marine Neogastropod venomic analysis with the SAP classical machine learning-based Levensaler Neogastropod Venomic Similarity Indexing (LNVSI) algorithm
- PyQt6 GUI
- Robust CSV import and JSON-based autosave
- Region-segmented spectral deconvolution (Voigt fitting, Gaussian fallback)
- Machine learning-powered similarity metrics
- FDR-corrected statistical testing
- Export results as CSV, PDF, or XLSX (to Downloads)
- Detailed logging and error handling
- Cross-platform (macOS, Linux, Windows; see build notes)
- Go to https://conowareproject.org/software/LNVSI to download the installer package for your operating system
-
Clone the repository:
git clone https://github.com/lukelevensaler/LNVSITool.git cd LNVSITool
-
Create and activate a virtual environment:
MacOS/Linux:
python3 -m venv venv source venv/bin/activate
Windows:
python3 -m venv venv venv\Scripts\activate
-
Install dependencies:
pip install -r src/requirements.txt
-
Compile with PyInstaller:
MacOS:
- Run (with a :)
pyinstaller --windowed --name "LNVSI Tool" --icon=assets/icon.png --add-data "assets:assets" src/main.py
- The compiled
.app
bundle will be in thedist/
directory.
Windows:
- Run (with a ;)
pyinstaller --windowed --name "LNVSI Tool" --icon=assets/icon.png --add-data "assets;assets" src/main.py
-
The compiled
.exe
file will be located in thedist\
directory. -
If you see a security warning, click "More info" and "Run anyway".
Linux:
-
You will have to first create the
.desktop
launcher in the project root:[Desktop Entry] Name=LNVSI Tool Exec=python3 /path/to/LNVSITool/src/main.py Icon=/path/to/LNVSITool/assets/icon.png Type=Application Categories=Science;Utility;
Replace
/path/to/LNVSITool/
with the actual path to your project directory. -
Then Make the
.desktop
file executable:sudo chmod +x LNVSI-Tool.desktop
-
Run (with a ;)
pyinstaller --windowed --name "LNVSI Tool" --icon=assets/icon.png --add-data "assets;assets" src/main.py
-
The compiled executable will be in the
dist/
directory -
It too must be made executable:
sudo chmod +x LNVSI-Tool.desktop
-
Clone the repository:
git clone https://github.com/lukelevensaler/LNVSITool.git cd LNVSITool
-
Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate # or 'venv\Scripts\activate' on Windows
-
Install dependencies:
pip install -r src/requirements.txt
-
Run directly from source:
python src/main.py
src/
— Main application codeassets/
— Images, stylesheetsinfo/
— License/EULArequirements.txt
— Python dependencies
- Logs and Autosave file can be found in the LNVSI Tool Utilities Directory the application creates upon usage in your "~" directory (home directory)
- All exports (CSV, PDF, XLSX) are saved to your Downloads directory by default.
- The Percentage Similarity data is saved and displayed via the main.py UI to 4 decimal places no matter what (not significant figures).
- The p-values data is, conversely, saved and displayed with 6 significant figures (not just rote decimal places).
See info/LICENSE.md
Created by Luke Levensaler, 2025