skillfed

biotite

A comprehensive library for computational molecular biology

biotite v1.7.1 3.3M downloads/30d#2,662 on PyPI969
Permissive license BSD-3-Clause Active released

What it is and what it does

Biotite is a comprehensive Python library for computational molecular biology that unifies common bioinformatics workflows into a single API. It handles sequence and biomolecular structure data through file I/O (reading and writing popular formats), database queries (searching and fetching from biological databases), analysis and editing, visualization, and external tool integration. The library stores most data internally as NumPy ndarray objects, enabling fast C-accelerated computation, NumPy-like indexing syntax, and direct access to underlying arrays for custom analysis.

The package targets both small analysis scripts and larger bioinformatics software projects. It depends on numpy, requests, msgpack, networkx, and biotraj at runtime, with optional matplotlib support for plotting. The library is actively maintained, supports current Python versions (3.12+), and has no known security vulnerabilities.

Use it for:

  • Download protein sequences from NCBI Entrez and perform sequence alignment using substitution matrices.
  • Parse and analyze biomolecular structure files (PDB, mmCIF) to identify structural features like disulfide bonds.
  • Identify homologous sequence regions across a protein family using sequence search and alignment tools.
  • Build custom bioinformatics pipelines by combining file parsing, analysis, and visualization in a single workflow.
  • Visualize sequence alignments and protein structures for publication or interactive exploration.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Biotite provides a unified Python library for computational molecular biology, handling sequence and biomolecular structure data through file I/O, analysis, visualization, and database integration.

Yes. Biotite is production-stable (Development Status 5), actively maintained, carries no known vulnerabilities, and offers a cohesive API for common bioinformatics tasks. Medium install friction is offset by prebuilt wheels and strong community adoption (top 5000 PyPI). Install if you work with sequences or structures; the unified interface and NumPy integration reduce boilerplate significantly.

Install

biotite on PyPI

pip

pip install biotite

uv

uv add biotite

poetry

poetry add biotite

Installing biotite

Before you install

Medium install friction with prebuilt wheels for Python 3.12–3.14 across macOS, Linux, and Windows. Active maintenance (last commit 2026-08-11, release 53 days ago) and 969 GitHub stars indicate solid community support.

License in practice

BSD-3-Clause (permissive) allows commercial and private use with minimal restrictions; attribution and license text inclusion are required.

Quickstart

pip install biotite

import biotite.sequence.align as align
import biotite.database.entrez as entrez

file_name = entrez.fetch_single_file(
    uids=["CAC34569", "ACL82594"], file_name="sequences.fasta",
    db_name="protein", ret_type="fasta"
)
matrix = align.SubstitutionMatrix.std_protein_matrix()
alignments = align.align_optimal(seq1, seq2, matrix)

Requires Python 3.12 or later; network access needed for database fetching via entrez module.

Verify before relying

  • Whether matplotlib is bundled or must be installed separately for visualization features.
  • Performance characteristics when handling large-scale sequence datasets or structure files.
  • Compatibility with third-party bioinformatics tools beyond what the description mentions.

Package facts

License BSD-3-Clause (permissive)
Python support supports the current Python release (>=3.12)
Install friction medium — platform-specific wheel
Runtime dependencies 6 — numpy, biotraj, requests, msgpack, networkx, packaging
Maintenance actively maintained — 53 days since the last release
Last repo commit
First released
Downloads 3,319,784/month — #2,662 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: biotite-1.7.1-cp312-cp312-macosx_11_0_arm64.whl; biotite-1.7.1-cp312-cp312-manylinux_2_28_aarch64.whl; biotite-1.7.1-cp312-cp312-manylinux_2_28_x86_64.whl; biotite-1.7.1-cp312-cp312-win_amd64.whl; biotite-1.7.1-cp313-cp313-macosx_11_0_arm64.whl; biotite-1.7.1-cp313-cp313-manylinux_2_28_aarch64.whl; biotite-1.7.1-cp313-cp313-manylinux_2_28_x86_64.whl; biotite-1.7.1-cp313-cp313-win_amd64.whl; biotite-1.7.1-cp314-cp314-macosx_11_0_arm64.whl; biotite-1.7.1-cp314-cp314-manylinux_2_28_aarch64.whl; biotite-1.7.1-cp314-cp314-manylinux_2_28_x86_64.whl; biotite-1.7.1-cp314-cp314-win_amd64.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchNatural Language :: EnglishOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3Programming Language :: Python :: Implementation :: CPythonTopic :: Scientific/Engineering :: Bio-Informatics

Tags

protein sequence alignmentmolecular structure analysisbioinformatics file parsingbiological database fetchingcomputational biology libraryprotein structure visualizationsequence homology search
bioinformaticsmolecular-biologysequence-analysis

More Bio-Informatics packages