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.2.tar.gz (57.9 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.2-py3-none-any.whl (62.3 kB view details)

Uploaded Python 3

File details

Details for the file bio_grep-0.1.2.tar.gz.

File metadata

  • Download URL: bio_grep-0.1.2.tar.gz
  • Upload date:
  • Size: 57.9 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.2.tar.gz
Algorithm Hash digest
SHA256 ff1078c6e81d287d8e697b4edf2b723936dc6f3f33fc2dc75c5eff7abbf8a149
MD5 2fb4a7530596ba32a053adfe9bbfebfd
BLAKE2b-256 0e27a2063279ccd2ad81d664d032d65d6d5efe7c0e69703aa29ffd1d81e71457

See more details on using hashes here.

File details

Details for the file bio_grep-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: bio_grep-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 62.3 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 48e2f054502ecb06143c562a99fe96f9ca488f8e6cbe2bb490e86b7ac26a2665
MD5 0399d2a2e156bc6083ada9dfe097ba9d
BLAKE2b-256 de2176a014c5f5c319067c180c70c3880591bb9616980fa4905a2111f453356e

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