PS Analyzer is a modern Sanger sequence analysis tool designed for clinical and research use. It provides a comprehensive suite of features for variant detection, visualization, and report generation, built with performance and security in mind using Angular and Tauri.
- High-Performance Visualization: Smooth, zoomed, and interactive Sanger trace dashboards.
- Automated Variant Detection: Integration with
bio-enginefor precise SNV and Indel identification. - VEP Integration: Automatic annotation of variants using the Ensembl Variant Effect Predictor.
- Clinical Reporting: Professional PDF and HTML report generation with customizable variant and read selection.
- Secure by Design: Local-first architecture powered by Tauri, ensuring sensitive genetic data stays on your machine.
- Modern Tech Stack: Built with Angular 20, utilizing Signals and modern control flow for a reactive and efficient UI.
This repository contains the frontend and desktop application logic. It expects a sibling directory bio-engine containing the backend analysis services.
- Node.js: v20+
- Rust: For Tauri builds
- Conda/Python: For the
bio-enginebackend (if building from source) - Angular CLI:
npm install -g @angular/cli
- Clone the repository:
git clone https://github.com/lagosproject/ps-analyzer.git cd ps-analyzer - Install dependencies:
npm install
- Ensure
bio-engineis present in the sibling directory. You can clone it and build it, or download the latest release:cd .. git clone https://github.com/lagosproject/bio-engine.git cd bio-engine # Follow bio-engine README for environment setup and build cd ../ps-analyzer
To run the application in development mode:
./debug/build_run.shThis script will:
- Activate the necessary Conda environment.
- Build the
bio-enginesidecar. - Start the Tauri development server and Angular frontend.
To run the linter and check for code quality issues:
npm run lintTo automatically fix common linting issues:
npm run lint -- --fixThe application communicates with a local FastAPI server (part of the bio-engine). The API URL is configurable in src/app/core/services/analysis.service.ts or via environment variables in future releases.
Contributions are welcome! Please feel free to submit pull requests or open issues for feature requests and bug reports.
This project relies on the following open-source tools and projects:
- Tracy - Used for trace decomposition and assembly.
- Ensembl VEP - Used for variant effect prediction.
- Bio-Engine - The Python backend for sequence analysis.
Here are the major technologies and packages used to build this project:
This project is licensed under the MIT License - see the LICENSE file for details.