{"id":24435435,"url":"https://github.com/bamescience/multistagesearch","last_synced_at":"2026-04-15T06:38:36.284Z","repository":{"id":162965805,"uuid":"604094150","full_name":"BAMeScience/MultiStageSearch","owner":"BAMeScience","description":null,"archived":false,"fork":false,"pushed_at":"2023-05-09T09:22:25.000Z","size":103,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-02T16:44:33.021Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BAMeScience.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-20T10:19:21.000Z","updated_at":"2023-05-09T09:23:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"c19f7017-b59f-4f81-aa14-74c52aecb6b2","html_url":"https://github.com/BAMeScience/MultiStageSearch","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/BAMeScience/MultiStageSearch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMeScience%2FMultiStageSearch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMeScience%2FMultiStageSearch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMeScience%2FMultiStageSearch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMeScience%2FMultiStageSearch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BAMeScience","download_url":"https://codeload.github.com/BAMeScience/MultiStageSearch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMeScience%2FMultiStageSearch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31830156,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"online","status_checked_at":"2026-04-15T02:00:06.175Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-20T17:20:14.509Z","updated_at":"2026-04-15T06:38:36.255Z","avatar_url":"https://github.com/BAMeScience.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MultiStageSearch\n\n## Goal of this Pipeline\nIn Proteomic analysis, Viruses often yield low identification rates, especially on strain level.\nThe aim is the usage of a proteogenomic approach in a multistage search approach to overcome this problem.\n\nIt consists roughly of the following steps:\n\n1. Host and Contaminant Filtering (optional)\n2. Search against a reference proteome database provided by the user\n3. Mapping and scoring of PSMs to find interesting species\n4. Download of genomic data by one of the following approaches:\n    1. Search for sequences linked to the species taxon\n    2. Infer descendants of the given Taxon and search for sequences according to the descendant Taxon name\n5. Translation of the nucleotide sequences to proteomes using a 6-frame translation approach\n6. Concatenation of the proteomes for the sample\n7. Reduction of the search space by combining duplicate sequences\n8. Search agains the created proteome database of translates nucleotide sequences\n9. Combining of the results of both search steps for potential downstream analysis\n10. Creation of different plots to evaluate the results\n\nOften, strain level genomes are only linked to the species taxon.\nTherefore a workaround is required to fetch sequences for strain of the given taxon.\nOne way is just download sequences linked to the species taxon and infer the strain from the metadata of the sequence records.\nAn other way is to search sequences with similar names to the strain name. In Theory, this approach should yield a more precise result.\nBut sometimes also the names of strains found in the taxonomy are not equal to sequence name records in the NCBI Database.\nIf using the descendants approach, when no sequence is found, the workflow automatically falls back to the other approach for the affected taxon id.\nThe user should test both approaches for the given sample.\n\nThe workflow was developed in a way that allows the analysis of multiple samples at the same time.\n\n## Input:\n- samples.tsv: A tab separated list with the following information for each sample:\n    - sample: Name of the sample\n    - mgf: Path to the mgf file\n    - par: Path to the par file\n    - host_fasta: Path to the fasta file containing the host database. Please make sure that the file extension is \"fasta\". \n    - host_name: Scientific Name of the Host\n- Additionally a fasta file containing common contaminants is required for the optional host filtering step.\n- Please make sure to adjust the config.yaml according to your paths and the NCBI account data (Mail and API key). \n\n## Getting started:\nPlease make sure that \n[SearchGUI](http://compomics.github.io/projects/searchgui) \nand \n[PeptideShaker](http://compomics.github.io/projects/peptide-shaker) \nare installed and the paths are configured in the config file.\\\nOther dependencies (other than the paths in the config) should be handled by the workflow automatically.\\\nThe workflow was tested using Ubuntu 22.04LTS.\n\nMake sure that snakemake is installed by using conda. A tutorial for that can be found [here](https://snakemake.readthedocs.io/en/stable/getting_started/installation.html).\\\nThe workflow can be started with the following command while being in the MultistageSearch directory:\n```\nsnakemake --use-conda -c \u003cn_cores\u003e \n```\n\n## Output:\n- Plots showing statistics of the results\n- a combined Peptide-shaker report of both search iterations","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbamescience%2Fmultistagesearch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbamescience%2Fmultistagesearch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbamescience%2Fmultistagesearch/lists"}