Skip to main content

bib2graph

De una búsqueda bibliográfica a redes de citación reproducibles — una biblioteca de literatura que curás vos, sin servidores ni planillas.

Un antídoto al sesgo del related work escrito de memoria. Cuando armás la revisión de literatura recordando papers, repetís lo que ya conocés y dejás afuera lo que no. bib2graph convierte una búsqueda en un corpus + redes de citación + un orden de lectura priorizado —deterministas, reproducibles y con procedencia—. Te lleva hasta la lectura y se detiene ahí: no interpreta, no gestiona tu investigación ni usa IA; el juicio queda tuyo.

PyPI Python License: GPL-3.0 CI

bib2graph toma una ecuación de búsqueda (o un archivo .bib), arma un corpus de papers desde OpenAlex, te deja curarlo y lo proyecta a redes bibliométricas listas para analizar en Gephi, Python o donde quieras: acoplamiento bibliográfico, co-citación, co-autoría, colaboración institucional y co-ocurrencia de keywords.

El corpus persiste y crece entre sesiones, y el resultado es reproducible: mismo input, mismas redes.

⚠️ Alpha. Mientras la versión sea 0.x, la API puede cambiar entre releases menores. Úsalo para explorar y validar, no como dependencia estable de producción todavía.

Instalación

Recomendamos uv para gestionar el entorno:

uv add bib2graph

También funciona con pip:

pip install bib2graph

Sembrar desde archivos BibTeX necesita un extra: bib2graph[bibtex].

Quickstart

De una ecuación de búsqueda hasta un orden de lectura, sin escribir código:

b2g init mi-investigacion
cd mi-investigacion

b2g seed --equation '"unequal ecological exchange"' --max-results 50   # 1. corpus desde OpenAlex
b2g chain --direction both --max-candidates 300                        # 2. barrido: siguiendo citaciones
b2g curate dump && b2g curate apply curacion.csv                       # 3. curás vos (revisás el CSV)
b2g build                                                              # 4. construye las redes
b2g read top --kind bibliographic_coupling                            #    → orden de lectura (centrales primero)
b2g export --format graphml                                           # → redes en GraphML para Gephi

Ese es el hilo completo: lista ingenua → barrido → curación → redes → lectura dirigida. La escritura de tu revisión narrativa —el paso 5— queda de tu lado. Cada comando acepta --json para orquestarlo desde scripts o agentes. Lista completa: b2g --help.

Con Claude Code: pedile a Claude que lo use

La forma más simple de usar bib2graph es pedirle a Claude que lo use por vos. bib2graph trae una skill de Claude Code que entrevista tu pregunta de investigación y corre el ciclo completo (init → seed → chain → build → read) sin que escribas comandos:

pip install bib2graph
b2g skill add            # instala la skill en ~/.claude/skills/bib2graph/

Después, en Claude Code: "usá bib2graph para armar la red de citación de estos papers…". La skill viaja dentro del mismo paquete que el CLI, así que siempre está al día con tu versión de bib2graph. Usá --project para instalarla solo en el proyecto actual.

Desde Python

from pathlib import Path
from bib2graph import OpenAlexSource, DuckDBStore, Networks, GraphMLExporter

corpus = OpenAlexSource().seed('"unequal ecological exchange"').corpus
store = DuckDBStore(Path("biblioteca.duckdb"))
store.persist(corpus)

for red in Networks.quick(store.load()):
    GraphMLExporter().export(red.graph, red.metrics, out_dir=Path(f"redes/{red.spec.kind}"))

Qué hace

  • Siembra desde una ecuación de búsqueda (OpenAlex) o un archivo BibTeX.
  • Expande el corpus siguiendo citaciones, rankeando candidatos por estructura — sin IA.
  • Curás vos: aceptar/rechazar papers, filtros PRISMA, todo versionable en CSV.
  • 5 redes bibliométricas: acoplamiento, co-citación, co-autoría, instituciones, co-keywords.
  • Sub-redes temáticas filtrando por keyword.
  • Biblioteca persistente (DuckDB) que crece entre sesiones.
  • Reproducible: mismo corpus → mismas redes y comunidades (hash de contenido).
  • Dos interfaces: CLI scriptable (b2g, salida --json) y librería de Python.
  • Exporta a GraphML/CSV para Gephi, Cytoscape, networkx, etc.

Cómo se construye (y la IA)

bib2graph se desarrolla con la IA en el lazo: una persona plantea el problema, decide y aprueba cada cambio; modelos de IA implementan el código, los tests y la documentación bajo esa dirección. El producto en sí no usa IA generativa — el ranking del forrajeo es estructura bibliométrica determinista (acoplamiento, co-citación, centralidad), sin LLM ni embeddings, y la curación es 100% humana. El detalle está en AI_DISCLOSURE.md.

Documentación

Licencia

GPL-3.0-or-later — software libre con copyleft fuerte: cualquier derivado que se distribuya debe seguir siendo libre y de código abierto. Es deliberado: esta herramienta queda para la comunidad y no puede cerrarse en un producto propietario.

Copyright (C) 2026 Equipo bib2graph (complexluise).

Metadata

Release files for bib2graph 0.15.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bib2graph 0.15.1
File Size Uploaded
bib2graph-0.15.1.tar.gz 1.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for bib2graph 0.15.1
File Interpreter ABI Platform
bib2graph-0.15.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / bib2graph-0.15.1.tar.gz

Download URL bib2graph-0.15.1.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
ae06cd089ff2ee1f18545e645c0cd3a4611b4aabf2ee3c59c5dc907dec40bf4e
BLAKE2b-256 checksum
How to use checksums
18334f5ed6bb0dfa2d82275e1a4107a57e39b2ea1637282a2b8d1c648530aa5f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / bib2graph-0.15.1-py3-none-any.whl

Download URL bib2graph-0.15.1-py3-none-any.whl
Size 290.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cebb2cc3c836ee60f5d313bb7285dc2187cc1899a9ab97c2c713485fdeef689b
BLAKE2b-256 checksum
How to use checksums
f051317d77e94aa618e55ac284bcf7cf191ac1a65e2a4e1922c170b5abf1cdc8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.15.1 This release

2 release files

0.15.0

2 release files

0.14.0

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.0

1 release file

0.8.0

1 release file

0.7.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page