Skip to content

Add PlasmidFinder module and integration instructions for Kleborate#112

Open
tnmquann wants to merge 3 commits intoklebgenomics:mainfrom
tnmquann:main
Open

Add PlasmidFinder module and integration instructions for Kleborate#112
tnmquann wants to merge 3 commits intoklebgenomics:mainfrom
tnmquann:main

Conversation

@tnmquann
Copy link
Copy Markdown

@tnmquann tnmquann commented Apr 3, 2026

This pull request introduces PlasmidFinder module with Kleborate 3. The documentation covers installation, usage, parameter mapping, output interpretation, troubleshooting, and example workflows. The test data file provides a sample result structure for validating PlasmidFinder integration.

Documentation and User Guide:

  • Added instructions file instructions.md to general__plasmidfinder directory, covering installation, usage, parameter mapping, example workflows, output interpretation, troubleshooting, and related resources for running PlasmidFinder within Kleborate 3.

Test Data:

  • Added data.json to general__plasmidfinder/test_files, providing example PlasmidFinder output with realistic test results for Enterobacteriaceae and Gram Positive categories, including hit details and run metadata.

tnmquann and others added 3 commits January 5, 2026 09:55
- Implemented general__plasmidfinder.py to integrate PlasmidFinder for detecting plasmid replicons.
- Added command-line options for custom configurations including database path, minimum coverage, and identity threshold.
- Created functions for handling input files, running PlasmidFinder, and parsing its JSON output.
- Developed unit tests for module functionality, including CLI option validation and output parsing.
- Included a sample data.json file for testing purposes.
- Removed obsolete download.sh script.
Added comprehensive installation and usage instructions for the PlasmidFinder module within Kleborate 3, including prerequisites, installation steps, usage examples, and troubleshooting tips.
Copilot AI review requested due to automatic review settings April 3, 2026 11:14
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds a new general__plasmidfinder module to run PlasmidFinder within Kleborate, along with user-facing integration documentation and example JSON output for tests.

Changes:

  • Introduces a new Kleborate module (general__plasmidfinder) that runs plasmidfinder.py, parses data.json, and optionally copies extended outputs into {outdir}/{strain}/.
  • Adds a comprehensive module-specific usage guide (instructions.md) for installation, parameters, workflows, outputs, and troubleshooting.
  • Adds unit/integration-style tests plus realistic sample PlasmidFinder JSON output (test_files/data.json) to validate parsing and expected result structure.

Reviewed changes

Copilot reviewed 4 out of 7 changed files in this pull request and generated 5 comments.

File Description
kleborate/modules/general__plasmidfinder/general__plasmidfinder.py New module implementation (CLI options, external program check, PlasmidFinder invocation, JSON parsing, extended output copying).
kleborate/modules/general__plasmidfinder/test_general__plasmidfinder.py New test suite covering CLI validation, parsing behavior, and optional integration tests.
kleborate/modules/general__plasmidfinder/test_files/data.json Sample PlasmidFinder JSON output used by parsing tests.
kleborate/modules/general__plasmidfinder/data/instructions.md End-user documentation for installing and running the module (and interpreting outputs).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread kleborate/modules/general__plasmidfinder/general__plasmidfinder.py
Comment thread kleborate/modules/general__plasmidfinder/general__plasmidfinder.py
Comment thread kleborate/modules/general__plasmidfinder/data/instructions.md
@katholt
Copy link
Copy Markdown
Collaborator

katholt commented Apr 19, 2026

Hi @tnmquann thanks for contributing this!
We will need to carefully review and test this module before it could be integrated into Kleborate. FYI We're currently working on validating recently developed modules and output formats for a planned release, so it will be a little while before we can prioritise looking at this but we will get to it.
Thanks again :-)
Kat

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants