GitRef

A git-based reference manager — like Zotero, but your library is a plain git repo.

What is GitRef?

GitRef manages your academic references using standard BibTeX and git instead of a proprietary database. Every paper you add — by DOI, arXiv ID, or ISBN — is stored in a .bib file with PDFs packed into a compressed archive. Your entire library lives in a git repo you control, syncs across machines with git push/pull, and is browsable on GitHub.

It's designed to be DAU-friendly: run gitref watch and all PDFs are extracted for reading. Drop a PDF into the folder and it's auto-added. Close your viewer and files are auto-repacked. No manual open/close commands needed.

Key Features

Download & Installation

Install via pip (recommended):

pip install gitref

Requirements: Python 3.10+, Git (for sync)
License: MIT
Status: Active development

Quick Start

# Initialise a new library
gitref init

# Add a paper by DOI
gitref add "10.1038/s41586-024-07487-w"

# Add by arXiv ID
gitref add "2401.12345"

# Start watcher (extracts PDFs, auto-adds/repacks)
gitref watch

# Open interactive TUI
gitref browse

# Sync with remote
gitref sync

# Full help
gitref --help