Skip to main content

Local-first biological sequence search engine

Project description

bio-grep

bio-grep is a local-first biological search engine for fast iterative querying over FASTA, FASTQ, GFF3, GTF, BED, VCF, SAM/BAM, GenBank, and EMBL corpora.

Install

pip install "bio-grep[bam]"

or

uv tool install "bio-grep[bam]"

One-line installer (tag-pinned):

curl -fsSL https://raw.githubusercontent.com/ravishar313/bio-grep/v0.1.1/scripts/install.sh | bash

Quick Start

Index one or more files:

bio-grep index data/fasta/*.fasta --index-dir . --k 7

Run a motif search:

bio-grep search --motif "C..C" --top-k 20 --index-dir .

Search annotation formats:

bio-grep search --file-type gff --region "chr1:120-300" --feature-type-exact gene --top-k 20 --index-dir .
bio-grep search --file-type vcf --region "chr1:1-1000000" --filter-exact PASS --top-k 20 --index-dir .
bio-grep search --file-type sam --seqid-exact chr1 --mapq-gte 30 --top-k 20 --index-dir .

Fetch full sequence payload by ID:

bio-grep fetch s1 --index-dir .

Highlights

  • Agent-first compact jsonl output by default.
  • Stable metadata keys (null when unavailable).
  • Rich filter support for sequence and annotation search.
  • --version flag for CLI/version pinning workflows.

Python API

from pathlib import Path
from bio_grep.engine import BioGrep

bio = BioGrep(base_dir=Path("."), k=7)
bio.index([Path("data/fasta/uniprot_reviewed_human_250.fasta")])
rows = bio.search(motif="C..C", length_lt=200).top_k(10)
print(rows[0]["id"], rows[0]["score"])

Project Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bio_grep-0.1.1.post2.tar.gz (57.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bio_grep-0.1.1.post2-py3-none-any.whl (62.4 kB view details)

Uploaded Python 3

File details

Details for the file bio_grep-0.1.1.post2.tar.gz.

File metadata

  • Download URL: bio_grep-0.1.1.post2.tar.gz
  • Upload date:
  • Size: 57.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bio_grep-0.1.1.post2.tar.gz
Algorithm Hash digest
SHA256 159d19e470bc34ff56982e7bd40b326bdcbcd68b054c9b1b3e28211383d45f36
MD5 7483ae1f9bc9f66ad7063e39d8e5bd26
BLAKE2b-256 5cb52c80642dac0568eb13d682ae2afccfd73c4a013a7d010bc4be33c1dad63f

See more details on using hashes here.

File details

Details for the file bio_grep-0.1.1.post2-py3-none-any.whl.

File metadata

  • Download URL: bio_grep-0.1.1.post2-py3-none-any.whl
  • Upload date:
  • Size: 62.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for bio_grep-0.1.1.post2-py3-none-any.whl
Algorithm Hash digest
SHA256 7ee2c04374a23d77c9d3871ca8862087582aa63024c8a189f56e6946240debbd
MD5 5d328dfd4000d422c366361c9533cec3
BLAKE2b-256 9456ed286cfc984d1239d7ffe1669f39a45d64556ae8bdb1599400ffa053a473

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page