# bibim
[![PyPI version](https://img.shields.io/pypi/v/bibim)](https://pypi.org/project/bibim/)
`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.
## Features
- **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.
## Installation
Requires Python 3.8 or higher.
```bash
$ pip install bibim
```
## Usage
### 1. Initialize a New Repository
Convert a folder into a `bibim` repository:
```bash
$ bibim init
```
This creates an `index.md` file and a `.bibim` directory for preferences.
#### Multiple Tables
You can have multiple tables in `index.md`, each representing a different category (e.g., `System`, `AI`). Add a
Markdown header above each table:
```markdown
# System
# AI
```
#### Customizing Markdown Formatting
Modify formatting options in `.bibim/settings.json`. For example, to change the default column order:
```json
{
"columns": [
"title",
"authors_concise",
"venue",
"year",
"num_citations",
"reference"
]
}
```
### 2. Add a Reference
Add a reference by providing the paper title or author names:
```bash
$ 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](https://scholar.google.com) and [DBLP](https://dblp.org)to
fill in authors, venue, and year.
- **Citation counts**: Retrieves current citation counts from Google Scholar.
- **arXiv links**: Includes direct links if available.
#### Specify a Target Table
Add a reference to a specific table:
```bash
$ 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`.
### 3. Update References
Update all reference metadata, keeping any user-added columns or notes intact:
```bash
$ bibim update
```
You can also update a specific table:
```bash
$ bibim update --table "ai"
```
### 4. Generate a BibTeX File
Generate a BibTeX file from your bibliography:
```bash
$ bibim bibtex
```
Entry IDs are formatted as `[author][year][firstwordoftitle]` in lowercase.
### 5. Formatting Markdown
To beautify the `index.md`, run:
```bash
$ bibim format
```
## Contributing
We welcome pull requests. For major changes, please open an issue to discuss your ideas.
## License
[MIT License](LICENSE)
Raw data
{
"_id": null,
"home_page": "https://github.com/ingim/bibim",
"name": "bibim",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "bibliography bibtex markdown command-line",
"author": "In Gim",
"author_email": "in.gim@yale.edu",
"download_url": "https://files.pythonhosted.org/packages/22/4a/e0f55d009aed6368e1c1855704d3c301aabea43ddb66dd6d76e95b17d2b0/bibim-0.2.1.tar.gz",
"platform": null,
"description": "# bibim\n\n[![PyPI version](https://img.shields.io/pypi/v/bibim)](https://pypi.org/project/bibim/)\n\n`bibim` is a command-line tool that simplifies bibliography management for computer science research. It allows you to\nmanage references directly within Markdown files, automatically fetch and update citation data, and generate BibTeX\nfiles.\n\n## Features\n\n- **Markdown-based management**: Seamlessly integrate your bibliography within your research notes.\n- **Automatic BibTeX generation**: No need to maintain separate `.bib` files; ensures consistent formatting across\n references.\n- **Up-to-date references**: Automatically keep paper attributes current without manual tracking from preprints to\n published versions.\n\n## Installation\n\nRequires Python 3.8 or higher.\n\n```bash\n$ pip install bibim\n```\n\n## Usage\n\n### 1. Initialize a New Repository\n\nConvert a folder into a `bibim` repository:\n\n```bash\n$ bibim init\n```\n\nThis creates an `index.md` file and a `.bibim` directory for preferences.\n\n#### Multiple Tables\n\nYou can have multiple tables in `index.md`, each representing a different category (e.g., `System`, `AI`). Add a\nMarkdown header above each table:\n\n```markdown\n# System\n\n# AI\n```\n\n#### Customizing Markdown Formatting\n\nModify formatting options in `.bibim/settings.json`. For example, to change the default column order:\n\n```json\n{\n \"columns\": [\n \"title\",\n \"authors_concise\",\n \"venue\",\n \"year\",\n \"num_citations\",\n \"reference\"\n ]\n}\n```\n\n### 2. Add a Reference\n\nAdd a reference by providing the paper title or author names:\n\n```bash\n$ bibim add \"attention is all you need vaswani\"\n```\n\nThis creates a new file in `./references/{author}{year}{firstwordoftitle}.md` with full metadata and updates `index.md`\nwith concise metadata (abbreviated author names, title, venue, year, citation count, and a link to the full reference).\n\n- **Automated metadata retrieval**: Searches [Google Scholar](https://scholar.google.com) and [DBLP](https://dblp.org)to\n fill in authors, venue, and year.\n- **Citation counts**: Retrieves current citation counts from Google Scholar.\n- **arXiv links**: Includes direct links if available.\n\n#### Specify a Target Table\n\nAdd a reference to a specific table:\n\n```bash\n$ bibim add \"few shot learners\" --table \"ai\"\n```\n\nTable titles are case-insensitive. If not specified, the reference is added to the first table in `index.md`.\n\n### 3. Update References\n\nUpdate all reference metadata, keeping any user-added columns or notes intact:\n\n```bash\n$ bibim update\n```\n\nYou can also update a specific table:\n\n```bash\n$ bibim update --table \"ai\"\n```\n\n### 4. Generate a BibTeX File\n\nGenerate a BibTeX file from your bibliography:\n\n```bash\n$ bibim bibtex\n```\n\nEntry IDs are formatted as `[author][year][firstwordoftitle]` in lowercase.\n\n### 5. Formatting Markdown\n\nTo beautify the `index.md`, run:\n\n```bash\n$ bibim format\n```\n\n## Contributing\n\nWe welcome pull requests. For major changes, please open an issue to discuss your ideas.\n\n## License\n\n[MIT License](LICENSE)\n",
"bugtrack_url": null,
"license": null,
"summary": "Minimalistic, markdown-based reference manager for computer science research",
"version": "0.2.1",
"project_urls": {
"Homepage": "https://github.com/ingim/bibim"
},
"split_keywords": [
"bibliography",
"bibtex",
"markdown",
"command-line"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4dcad4e2e6aba7d7ca05f5eb8a06ac53e18d171867f619255000faa6b96ea856",
"md5": "f77d30cf6a7216dc1b72e84f14934671",
"sha256": "d446f467418424d185f37fa88cd00ae99e1fcb0ffbe3df7eb6bfc75fe06fd5e7"
},
"downloads": -1,
"filename": "bibim-0.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f77d30cf6a7216dc1b72e84f14934671",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 14717,
"upload_time": "2024-09-26T16:30:51",
"upload_time_iso_8601": "2024-09-26T16:30:51.281670Z",
"url": "https://files.pythonhosted.org/packages/4d/ca/d4e2e6aba7d7ca05f5eb8a06ac53e18d171867f619255000faa6b96ea856/bibim-0.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "224ae0f55d009aed6368e1c1855704d3c301aabea43ddb66dd6d76e95b17d2b0",
"md5": "9ea770cdbb2b669eef27f4ecd64cedd0",
"sha256": "c27044061d938c28c7cdec7506d81729d2aa0d38c409087322da208418a0ee55"
},
"downloads": -1,
"filename": "bibim-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "9ea770cdbb2b669eef27f4ecd64cedd0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 14698,
"upload_time": "2024-09-26T16:30:52",
"upload_time_iso_8601": "2024-09-26T16:30:52.560737Z",
"url": "https://files.pythonhosted.org/packages/22/4a/e0f55d009aed6368e1c1855704d3c301aabea43ddb66dd6d76e95b17d2b0/bibim-0.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-26 16:30:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ingim",
"github_project": "bibim",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "bibim"
}