Skip to main content

A command-line tool for improving the integrity of BibTeX bibliographies

Project description

CircleCI ReadTheDocs Codecov DOI

bib-ami: A Bibliography Integrity Manager

bib-ami is a smart command-line tool for cleaning, enriching, and managing the quality of your BibTeX bibliographies. It automates a rigorous data integrity workflow by consolidating .bib files, validating every entry against external APIs like CrossRef, and deduplicating records with confidence.

The tool intelligently scores the quality of each reference and triages them based on your own configurable rules, enabling researchers to build a clean, reliable, and auditable bibliography for their LaTeX, Zotero, or other reference management workflows.

Key Features

  • Merge & Consolidate: Combines multiple .bib files from a directory into a single source.
  • Validate & Enrich: Validates entries against CrossRef to find canonical DOIs, and automatically enriches records with missing data like full author lists, publication years, and ISBNs.
  • Active DOI Resolution: Goes beyond just finding a DOI; bib-ami verifies that every DOI is active and resolvable via doi.org, protecting against stale or invalid identifiers.
  • Intelligent Deduplication: Uses verified DOIs as the primary key for accurate deduplication, with a fuzzy-matching fallback for entries without a DOI.
  • Configurable Quality Gating: Define your own standards for a "publishable" reference using a simple configuration file. Set quality thresholds (e.g., "Verified", "Confirmed") to automatically triage your entire library.
  • Centralized Configuration: Use the bib-ami config set command to easily manage your default settings, like your email and quality rules, without ever touching a JSON file.
  • Detailed Audit Trail: Provides transparent reporting on every action taken, with quality scores and changes noted directly in the output .bib files as comments.

Getting Started

1. Installation

Ensure you have Python 3.7+ installed. You can install bib-ami using pip:

pip install bib-ami

2. Quick Start

To process a directory of .bib files, run the following command. You must provide an email address for responsible use of the CrossRef API.

bib-ami --input-dir path/to/your/bibs --output-file cleaned.bib --email "your.email@example.com"

This will produce two files:

  • cleaned.bib: Contains the entries that meet your quality standards.
  • cleaned.suspect.bib: Contains entries that could not be verified and require manual review. This file is created automatically using a default name based on your main output file.

Configuration

bib-ami is highly configurable. You can set personal defaults for your email and quality filtering rules so you don't have to type them every time. The easiest way to do this is with the config command:

bib-ami config set email "your.email@example.com"
bib-ami config set triage_rules.min_quality_for_final_bib "Verified"

For a complete guide on all commands, configuration file locations, and available settings, please see the full Usage & Configuration documentation.

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

bib_ami-0.15.1.tar.gz (19.5 kB view details)

Uploaded Source

Built Distribution

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

bib_ami-0.15.1-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file bib_ami-0.15.1.tar.gz.

File metadata

  • Download URL: bib_ami-0.15.1.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for bib_ami-0.15.1.tar.gz
Algorithm Hash digest
SHA256 e0c376e68ed86f8984d9e57c5a98faabf630eb9a6cd87a0109d2ec9980513996
MD5 edec1f6c1e7dcd513a8ca6f52cd86e6d
BLAKE2b-256 84d9eb720f42ccba1b92736048ef4d952a59957c1b9906002b2a8bef607dff74

See more details on using hashes here.

File details

Details for the file bib_ami-0.15.1-py3-none-any.whl.

File metadata

  • Download URL: bib_ami-0.15.1-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for bib_ami-0.15.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7f00c5950fb0ba9ec3d98473fbc36b9d12ecc3d5e83c8958927567f75e4245c8
MD5 3aa83ba90d3f3a944b3e6106d3c44a46
BLAKE2b-256 495011c1b62e267dc227eb0ee5b878fa89ee09e50363c98669646b5f5c8696bd

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