Metadata-Version: 2.4
Name: bijux-proteomics
Version: 0.3.8
Summary: Install and command alias package for bijux-proteomics-core.
Project-URL: Homepage, https://bijux.io/bijux-proteomics/
Project-URL: Documentation, https://bijux.io/bijux-proteomics/04-bijux-proteomics-core/
Project-URL: Repository, https://github.com/bijux/bijux-proteomics
Project-URL: Issues, https://github.com/bijux/bijux-proteomics/issues
Project-URL: Changelog, https://github.com/bijux/bijux-proteomics/blob/main/packages/bijux-proteomics/CHANGELOG.md
Project-URL: Security, https://github.com/bijux/bijux-proteomics/blob/main/SECURITY.md
Author-email: Bijan Mousavi <bijan@bijux.io>
Maintainer-email: Bijan Mousavi <bijan@bijux.io>
License: Apache-2.0
License-File: LICENSE
License-File: NOTICE
Keywords: bioinformatics,compatibility,packaging,proteomics
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Typing :: Typed
Requires-Python: <4,>=3.11
Requires-Dist: bijux-proteomics-core<0.4.0,>=0.3.8
Description-Content-Type: text/markdown

# bijux-proteomics

<!-- bijux-proteomics-badges:generated:start -->
[![Python 3.11+](https://img.shields.io/badge/python-3.11%2B-3776AB?logo=python&logoColor=white)](https://pypi.org/project/bijux-proteomics/)
[![Typing: typed](https://img.shields.io/badge/typing-typed%20(PEP%20561)-0A7BBB)](https://pypi.org/project/bijux-proteomics/)
[![License: Apache-2.0](https://img.shields.io/badge/license-Apache--2.0-0F766E)](https://github.com/bijux/bijux-proteomics/blob/main/LICENSE)
[![CI Status](https://github.com/bijux/bijux-proteomics/actions/workflows/verify.yml/badge.svg?branch=main)](https://github.com/bijux/bijux-proteomics/actions/workflows/verify.yml?query=branch%3Amain)
[![GitHub Repository](https://img.shields.io/badge/github-bijux%2Fbijux--proteomics-181717?logo=github)](https://github.com/bijux/bijux-proteomics)

[![bijux-proteomics](https://img.shields.io/pypi/v/bijux-proteomics?label=bijux--proteomics&logo=pypi)](https://pypi.org/project/bijux-proteomics/)
[![agentic-proteins](https://img.shields.io/pypi/v/agentic-proteins?label=agentic--proteins&logo=pypi)](https://pypi.org/project/agentic-proteins/)
[![bijux-proteomics-foundation](https://img.shields.io/pypi/v/bijux-proteomics-foundation?label=foundation&logo=pypi)](https://pypi.org/project/bijux-proteomics-foundation/)
[![bijux-proteomics-core](https://img.shields.io/pypi/v/bijux-proteomics-core?label=core&logo=pypi)](https://pypi.org/project/bijux-proteomics-core/)
[![bijux-proteomics-runtime](https://img.shields.io/pypi/v/bijux-proteomics-runtime?label=runtime&logo=pypi)](https://pypi.org/project/bijux-proteomics-runtime/)
[![bijux-proteomics-intelligence](https://img.shields.io/pypi/v/bijux-proteomics-intelligence?label=intelligence&logo=pypi)](https://pypi.org/project/bijux-proteomics-intelligence/)
[![bijux-proteomics-knowledge](https://img.shields.io/pypi/v/bijux-proteomics-knowledge?label=knowledge&logo=pypi)](https://pypi.org/project/bijux-proteomics-knowledge/)
[![bijux-proteomics-lab](https://img.shields.io/pypi/v/bijux-proteomics-lab?label=lab&logo=pypi)](https://pypi.org/project/bijux-proteomics-lab/)

[![agentic-proteins](https://img.shields.io/badge/agentic--proteins-ghcr-181717?logo=github)](https://github.com/bijux/bijux-proteomics/pkgs/container/bijux-proteomics%2Fagentic-proteins)
[![bijux-proteomics-foundation](https://img.shields.io/badge/foundation-ghcr-181717?logo=github)](https://github.com/bijux/bijux-proteomics/pkgs/container/bijux-proteomics%2Fbijux-proteomics-foundation)
[![bijux-proteomics-core](https://img.shields.io/badge/core-ghcr-181717?logo=github)](https://github.com/bijux/bijux-proteomics/pkgs/container/bijux-proteomics%2Fbijux-proteomics-core)
[![bijux-proteomics-intelligence](https://img.shields.io/badge/intelligence-ghcr-181717?logo=github)](https://github.com/bijux/bijux-proteomics/pkgs/container/bijux-proteomics%2Fbijux-proteomics-intelligence)
[![bijux-proteomics-knowledge](https://img.shields.io/badge/knowledge-ghcr-181717?logo=github)](https://github.com/bijux/bijux-proteomics/pkgs/container/bijux-proteomics%2Fbijux-proteomics-knowledge)
[![bijux-proteomics-lab](https://img.shields.io/badge/lab-ghcr-181717?logo=github)](https://github.com/bijux/bijux-proteomics/pkgs/container/bijux-proteomics%2Fbijux-proteomics-lab)

[![bijux-proteomics docs](https://img.shields.io/badge/docs-bijux--proteomics-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/04-bijux-proteomics-core/)
[![agentic-proteins docs](https://img.shields.io/badge/docs-agentic--proteins-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/02-agentic-proteins/)
[![bijux-proteomics-foundation docs](https://img.shields.io/badge/docs-foundation-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/03-bijux-proteomics-foundation/)
[![bijux-proteomics-core docs](https://img.shields.io/badge/docs-core-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/04-bijux-proteomics-core/)
[![bijux-proteomics-runtime docs](https://img.shields.io/badge/docs-runtime-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/09-bijux-proteomics-runtime/)
[![bijux-proteomics-intelligence docs](https://img.shields.io/badge/docs-intelligence-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/05-bijux-proteomics-intelligence/)
[![bijux-proteomics-knowledge docs](https://img.shields.io/badge/docs-knowledge-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/06-bijux-proteomics-knowledge/)
[![bijux-proteomics-lab docs](https://img.shields.io/badge/docs-lab-2563EB?logo=materialformkdocs&logoColor=white)](https://bijux.io/bijux-proteomics/07-bijux-proteomics-lab/)
<!-- bijux-proteomics-badges:generated:end -->

`bijux-proteomics` is the distribution-name alias for the canonical core owner
`bijux-proteomics-core`.
It is the install and command alias for bijux-proteomics-core, while the
public Python import surface remains the canonical `bijux_proteomics`
namespace shipped by core.

Use this package when you need the flagship install name on PyPI while keeping
all scientific behavior owned by the canonical core package.

## Alias at a glance

- Use `bijux-proteomics` when packaging, documentation, or deployment needs
  the flagship distribution name rather than the canonical owner package name.
- Start scientific feature discovery from the
  [canonical core package docs](https://bijux.io/bijux-proteomics/04-bijux-proteomics-core/)
  because this package forwards into the core owner surface.
- Route all new scientific behavior to `bijux-proteomics-core`; keep this
  package focused on install-name compatibility and publication metadata.

## 0.3.8 Release Highlights

- The flagship distribution name now routes readers directly to the current
  core scientific surface instead of implying a second owner package.
- The alias follows the `0.3.8` release line while the canonical
  `bijux-proteomics-core` package continues to own FASTA, digestion, search,
  quantification, PTM, QC, and workflow-planning behavior.

## Installation

```bash
pip install bijux-proteomics
```

## Public APIs

The distribution alias installs the canonical core package, so the public
Python surface remains `bijux_proteomics`:

```python
from bijux_proteomics import parse_fasta_document

report = parse_fasta_document(">sp|P11111|PTM1 Protein 1\nMPEPTIDEK\n")

assert report.total_records == 1
assert len(report.accepted_records) == 1
assert report.accepted_records[0].canonical_accession == "P11111"
```

## Package identity

- Distribution name: `bijux-proteomics`
- Import root: `bijux_proteomics`
- Private metadata helper: `bijux_proteomics_alias`
- Canonical owner package: `bijux-proteomics-core`
- Canonical owner docs: `packages/bijux-proteomics-core/README.md`

## Package boundaries

- this package owns distribution-name compatibility and publication metadata
- scientific parsing, quantification, review, and workflow logic remain owned
  by `bijux-proteomics-core`
- new behavior must land in the canonical owner before this alias surface
  changes

## What this package must not do

- introduce independent scientific semantics or workflow logic
- fork the canonical `bijux_proteomics` import surface
- become a second release-policy owner for the core package

## Contract checkpoints

- the install alias must continue to resolve to the canonical core owner
- docs must state clearly that `bijux-proteomics-core` owns the behavior
- compatibility changes must stay covered by alias-package tests

## Choose this package when

- you want the flagship `bijux-proteomics` distribution name on PyPI
- deployment tooling depends on the canonical install alias rather than the
  owner package name
- packaging or documentation work needs the install alias without changing core
  behavior

## Route elsewhere when

- the change alters scientific parsing, review, workflow, or result semantics
- the work needs a new Python export that is not already owned by core
- the change would make this package more than a distribution alias

## Verification route

- run the alias compatibility tests before treating install-name changes as
  safe
- review `docs/ARCHITECTURE.md`, `docs/BOUNDARIES.md`, and `docs/CONTRACTS.md`
  when the alias claims shift
- check the canonical core README and tests when the proposed change touches
  user-facing scientific behavior

## Review questions

- does the change preserve this package as a distribution alias only
- is the canonical owner still explicit in both docs and behavior
- would the change still make sense if all scientific logic stayed in core

## Escalation route

- route the work to `bijux-proteomics-core` when any scientific behavior needs
  to change
- stop and review alias boundaries when the proposal starts adding
  package-specific behavior
- escalate before release when dependency or metadata changes could confuse
  canonical owner selection

## Consumer impact signals

- treat install-name, dependency, or metadata changes as high-impact because
  they affect package resolution
- expect review from core owners when alias docs or expectations shift
- expect a smaller release burden when the change only clarifies routing or
  compatibility wording

## Explicit non-goals

- this package does not own assay-processing or workflow semantics
- this package does not define runtime, intelligence, knowledge, or lab policy
- this package does not replace the canonical core release surface

## Documentation

- Release guidance lives in this `README.md`, this package `CHANGELOG.md`, and
  package `docs/*.md` under the canonical owner surface.
- [Product overview](https://bijux.io/bijux-proteomics/01-bijux-proteomics/foundation/product-overview/)
- [Workflow families](https://bijux.io/bijux-proteomics/01-bijux-proteomics/foundation/workflow-families/)
- [Product architecture](https://bijux.io/bijux-proteomics/01-bijux-proteomics/foundation/product-architecture/)
- [Cross-package ownership](https://bijux.io/bijux-proteomics/01-bijux-proteomics/foundation/cross-package-ownership/)
- [Execution overview](https://bijux.io/bijux-proteomics/09-bijux-proteomics-runtime/execution-overview/)
- [Canonical core package docs](https://bijux.io/bijux-proteomics/04-bijux-proteomics-core/)
- [Changelog](CHANGELOG.md)
