citekeep
Clean a reference once. Reuse it in every LaTeX project.
You write several papers at once, with different co-authors. Each has its own
.bib. The same reference gets typed again in each of them, a little
differently every time, and the one you cleaned up two years ago sits in a
folder you have since archived.
citekeep gives you one canonical library — a plain .bib file you own — and
materialises each project's bibliography from it without leaving your editor.
It searches the project first, then your library, then zbMATH, with CrossRef as
a fallback.
Three things follow from that:
- Your co-authors need nothing. The project keeps an ordinary,
self-contained
.bib, and their citation keys are never rewritten. - It works offline. A reference met once stays searchable, and metadata corrected once is never repaired a second time.
- It refuses rather than guesses. When the evidence does not settle whether two records are one work, citekeep says so and writes nothing.
Project (●) first. Personal library (○) next. zbMATH and CrossRef only when needed.
What it is not
Not a Zotero replacement, a PDF manager, a note-taking system, or a hosted
collaboration platform. citekeep manages the flow of bibliographic records and
leaves the rest to tools that already do it well: Emacs and Citar for reading
notes and PDF links, git and an ordinary .bib for collaboration.
Install
uv tool install citekeep
citekeep init --library ~/bibliography/master.bib
No runtime dependencies — everything is standard library. Requires Python 3.11.
If you already have a library, do not initialise a second one: point citekeep at the existing file instead.
Documentation
citekeep.readthedocs.io — a tutorial for the first project, guides for the day-to-day, the command and API reference, and the reasoning behind the design.
Licence
MIT.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file citekeep-0.1.1.tar.gz.
File metadata
- Download URL: citekeep-0.1.1.tar.gz
- Upload date:
- Size: 148.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be5653d6f0cfcfa3dfb0cc5b56d7bb18c4fedfb2d0b5d5f62eea08e8a33b3374
|
|
| MD5 |
5d2070cca2fce021b0d3f98b48ae2c88
|
|
| BLAKE2b-256 |
f5f70f66532a1ebfa80d09c982ff7cf31739c0328c0c5b684ab7224e54ec12ae
|
Provenance
The following attestation bundles were made for citekeep-0.1.1.tar.gz:
Publisher:
publish.yml on klutchnikoff/citekeep
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
citekeep-0.1.1.tar.gz -
Subject digest:
be5653d6f0cfcfa3dfb0cc5b56d7bb18c4fedfb2d0b5d5f62eea08e8a33b3374 - Sigstore transparency entry: 2516398232
- Sigstore integration time:
-
Permalink:
klutchnikoff/citekeep@5dd87ec4a3fc17c2a968ec285b37cb4b2a019f76 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/klutchnikoff
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5dd87ec4a3fc17c2a968ec285b37cb4b2a019f76 -
Trigger Event:
push
-
Statement type:
File details
Details for the file citekeep-0.1.1-py3-none-any.whl.
File metadata
- Download URL: citekeep-0.1.1-py3-none-any.whl
- Upload date:
- Size: 70.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ec719a787e0d5af24e15e10253666ebd800c40abfd65f028012aebf0446073e
|
|
| MD5 |
87a5519304546b0c284d37608bd0ea71
|
|
| BLAKE2b-256 |
8b3c8bb23c95036c6012af044ec50a16ab1f990d1de3a780eab393f728d258f3
|
Provenance
The following attestation bundles were made for citekeep-0.1.1-py3-none-any.whl:
Publisher:
publish.yml on klutchnikoff/citekeep
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
citekeep-0.1.1-py3-none-any.whl -
Subject digest:
0ec719a787e0d5af24e15e10253666ebd800c40abfd65f028012aebf0446073e - Sigstore transparency entry: 2516398267
- Sigstore integration time:
-
Permalink:
klutchnikoff/citekeep@5dd87ec4a3fc17c2a968ec285b37cb4b2a019f76 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/klutchnikoff
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5dd87ec4a3fc17c2a968ec285b37cb4b2a019f76 -
Trigger Event:
push
-
Statement type: