DevScholar for JupyterLab - Link research papers (arXiv, DOI, IEEE) directly in your notebooks with hover metadata and PDF preview
Project description
DevScholar for JupyterLab
Your Notebooks, Connected to Knowledge.
DevScholar automatically detects research paper references (arXiv, DOI, IEEE, Semantic Scholar) in your Jupyter notebooks and provides rich metadata on hover, PDF preview, and citation management.
Features
1. Automatic Paper Detection
Detects paper references in both code comments and markdown cells:
- arXiv:
arxiv:1706.03762,https://arxiv.org/abs/2301.12345 - DOI:
doi:10.1038/nature14539,https://doi.org/... - IEEE:
ieee:726791, IEEE Xplore URLs - Semantic Scholar: Paper URLs and Corpus IDs
- OpenAlex:
openalex:W1234567890
2. Rich Hover Metadata
Hover over any paper reference to see:
- Title & Authors
- Abstract
- Publication Year
- Citation Count
- Direct links to PDF and paper page
3. Smart Highlighting
Paper references are automatically underlined with color-coded indicators by source type.
4. Search & Cite
Search for papers by name and insert citations directly into your notebook:
- Use
Ctrl/Cmd+Shift+Por Command Palette → "Search & Cite Paper" - Search by title, author, or keyword
- Results from OpenAlex with citation counts
- Inserts properly formatted citations
5. PDF Preview
Preview paper PDFs directly inside JupyterLab:
- Click "Preview PDF" in hover tooltip
- Navigate pages with keyboard arrows
- Zoom in/out controls
- Works with arXiv and open access papers
6. Citation Management
- Export Bibliography: Generate BibTeX for all papers in your notebook
7. Zotero Sync
Two-way sync between your notebooks and Zotero library:
- Export papers from notebooks to Zotero
- Import citations from Zotero
- Link workspaces to Zotero collections
- Duplicate detection
8. Mendeley Sync
Two-way sync with Mendeley:
- Export papers to Mendeley
- Import citations from Mendeley
- Link workspaces to Mendeley folders
Installation
Prerequisites
- JupyterLab >= 4.0
Install from PyPI
pip install devscholar-jupyter
Install from source (development)
git clone https://github.com/pallaprolus/devscholar-jupyter.git
cd devscholar-jupyter
pip install -e .
jupyter labextension develop . --overwrite
Usage
- Open any Jupyter notebook
- Add paper references in comments or markdown:
In code cells:
# Implements attention mechanism from arxiv:1706.03762
def attention(q, k, v):
...
In markdown cells:
This implementation is based on the Transformer architecture
described in [arxiv:1706.03762](https://arxiv.org/abs/1706.03762).
- Hover over references to see metadata
- Use Command Palette → "DevScholar: Export Bibliography" to get BibTeX
Commands
| Command | Description |
|---|---|
DevScholar: Show All Paper References |
List all papers found in the notebook |
DevScholar: Search & Cite Paper |
Search and insert citations |
DevScholar: Export Bibliography (BibTeX) |
Copy BibTeX for all papers |
Settings
Configure via Settings → Advanced Settings Editor → DevScholar:
| Setting | Default | Description |
|---|---|---|
highlightPapers |
true |
Highlight paper references |
showTooltips |
true |
Show metadata on hover |
parseCodeCells |
true |
Detect papers in code comments |
parseMarkdownCells |
true |
Detect papers in markdown |
prefetchMetadata |
true |
Auto-fetch metadata |
cacheMaxAge |
7 |
Cache duration in days |
Related Projects
- DevScholar for VS Code - The original VS Code extension
Roadmap
- Paper detection in code and markdown cells
- Hover metadata from arXiv, DOI, OpenAlex
- BibTeX export
- Search & cite dialog
- PDF preview panel
- Zotero/Mendeley sync
- Google Colab support (browser extension)
Contributing
Contributions welcome! Please see CONTRIBUTING.md for guidelines.
License
MIT License - see LICENSE for details.
Part of the DevScholar ecosystem - Connecting code to knowledge.
Project details
Release history Release notifications | RSS feed
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 devscholar_jupyter-0.2.0.tar.gz.
File metadata
- Download URL: devscholar_jupyter-0.2.0.tar.gz
- Upload date:
- Size: 152.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
801502a08b8de89bab1e956122c374204665ea518962c947327ae733f57da06c
|
|
| MD5 |
835e525d6e5812482e7aee41bb4ece1a
|
|
| BLAKE2b-256 |
8f7a387debf2054830fb97330adddc47c65eeda89a8850a3c82121cad8815c4d
|
Provenance
The following attestation bundles were made for devscholar_jupyter-0.2.0.tar.gz:
Publisher:
publish.yml on pallaprolus/devscholar-jupyter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
devscholar_jupyter-0.2.0.tar.gz -
Subject digest:
801502a08b8de89bab1e956122c374204665ea518962c947327ae733f57da06c - Sigstore transparency entry: 797931991
- Sigstore integration time:
-
Permalink:
pallaprolus/devscholar-jupyter@fd0fb533be3e70bc789a5b07807460f546fbcc28 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/pallaprolus
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fd0fb533be3e70bc789a5b07807460f546fbcc28 -
Trigger Event:
push
-
Statement type:
File details
Details for the file devscholar_jupyter-0.2.0-py3-none-any.whl.
File metadata
- Download URL: devscholar_jupyter-0.2.0-py3-none-any.whl
- Upload date:
- Size: 32.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
714d1850f07d548071ec38f0e92755b51d0e77699eba332bd79caa4d7cc00b27
|
|
| MD5 |
f76b8953bb051d9968ca76b2321936a9
|
|
| BLAKE2b-256 |
cfa5a45af66c8a1e973798dbe82a74df7a8afffadd779c782b44884cdd83fcc9
|
Provenance
The following attestation bundles were made for devscholar_jupyter-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on pallaprolus/devscholar-jupyter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
devscholar_jupyter-0.2.0-py3-none-any.whl -
Subject digest:
714d1850f07d548071ec38f0e92755b51d0e77699eba332bd79caa4d7cc00b27 - Sigstore transparency entry: 797931996
- Sigstore integration time:
-
Permalink:
pallaprolus/devscholar-jupyter@fd0fb533be3e70bc789a5b07807460f546fbcc28 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/pallaprolus
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fd0fb533be3e70bc789a5b07807460f546fbcc28 -
Trigger Event:
push
-
Statement type: