biblioflow
biblioflow
biblioflow is a Python-native toolkit for bibliographic metadata, bibliometrics, science mapping, and literature-review data workflows. It is inspired by the R bibliometrics ecosystem, especially bibliometrix, while keeping Pythonic names, plain data objects, and lightweight packaging.
Core library
biblioflow provides ingestion, normalization, validation, descriptive analysis, matrices, networks, mapping helpers, exports, and a CLI. Supported source workflows include BibTeX, RIS, Scopus CSV, Web of Science plain text, OpenAlex JSON/API, and Crossref JSON/API.
Web application
biblioflow-web packages a FastAPI backend with a React frontend bundled into the Python wheel for browser-based workflows.
Notebook application
biblioflow-nb provides an ipywidgets application for Jupyter notebooks and Google Colab while delegating computation to the core library.
Repository packages
| Package | Distribution name | Main entry point | Purpose |
|---|---|---|---|
| Core library | biblioflow |
import biblioflow as bf |
Bibliographic data loading, normalization, analysis, matrices, networks, mapping, and export. |
| Web app | biblioflow-web |
biblioflow-web |
FastAPI application that serves API routes and bundled React assets. |
| Notebook app | biblioflow-nb |
import biblioflow_nb as bfn |
Jupyter/Colab widget application that mirrors the web workflow. |
Minimal Python workflow
import biblioflow as bf
records = bf.load("data/scopus_export.bib", source="scopus")
summary = bf.analyze(records)
network = bf.network(records, kind="co_occurrence", unit="keywords_all")
bf.export(network, "keyword-network.graphml", format="graphml")Prefer the source= keyword in new code:
dataset = bf.load("data/scopus_export.csv", source="scopus")
dataset = bf.load("data/savedrecs.txt", source="wos")What biblioflow focuses on
- File-based bibliographic ingestion for common export formats and major providers, including Web of Science, Scopus, OpenAlex, Crossref, PubMed, BibTeX, and RIS.
- Canonical metadata records with raw-record traceability.
- Structured validation warnings instead of silent data loss.
- Pythonic APIs for bibliometric summaries, matrix construction, network construction, and science-mapping helpers.
- Browser and notebook applications that reuse the same core library instead of reimplementing analysis logic.
Naming policy
The project name is biblioflow for the PyPI package, Python import package, and command-line interface. The web and notebook applications are published as biblioflow-web and biblioflow-nb. Do not document or add a hyphenated biblio-flow alias.