bibim
is a command-line tool that simplifies bibliography management for computer science research. It allows you to
manage references directly within Markdown files, automatically fetch and update citation data, and generate BibTeX
files.
- Markdown-based management: Seamlessly integrate your bibliography within your research notes.
- Automatic BibTeX generation: No need to maintain separate
.bib
files; ensures consistent formatting across references. - Up-to-date references: Automatically keep paper attributes current without manual tracking from preprints to published versions.
Requires Python 3.8 or higher.
$ pip install bibim
Convert a folder into a bibim
repository:
$ bibim init
This creates an index.md
file and a .bibim
directory for preferences.
You can have multiple tables in index.md
, each representing a different category (e.g., System
, AI
). Add a
Markdown header above each table:
# System
# AI
Modify formatting options in .bibim/settings.json
. For example, to change the default column order:
{
"columns": [
"title",
"authors_concise",
"venue",
"year",
"num_citations",
"reference"
]
}
Add a reference by providing the paper title or author names:
$ bibim add "attention is all you need vaswani"
This creates a new file in ./references/{author}{year}{firstwordoftitle}.md
with full metadata and updates index.md
with concise metadata (abbreviated author names, title, venue, year, citation count, and a link to the full reference).
- Automated metadata retrieval: Searches Google Scholar and DBLPto fill in authors, venue, and year.
- Citation counts: Retrieves current citation counts from Google Scholar.
- arXiv links: Includes direct links if available.
Add a reference to a specific table:
$ bibim add "few shot learners" --table "ai"
Table titles are case-insensitive. If not specified, the reference is added to the first table in index.md
.
Update all reference metadata, keeping any user-added columns or notes intact:
$ bibim update
You can also update a specific table:
$ bibim update --table "ai"
Generate a BibTeX file from your bibliography:
$ bibim bibtex
Entry IDs are formatted as [author][year][firstwordoftitle]
in lowercase.
To beautify the index.md
, run:
$ bibim format
We welcome pull requests. For major changes, please open an issue to discuss your ideas.