publication-figure-retrieval

This tool provides a method for retrieving publication figure images from NIH's Entrez API based on a list of species.

https://github.com/alexjsully/publication-figure-retrieval

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: ncbi.nlm.nih.gov
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.4%) to scientific vocabulary

Keywords

bioinformatics publication-data science
Last synced: 6 months ago · JSON representation ·

Repository

This tool provides a method for retrieving publication figure images from NIH's Entrez API based on a list of species.

Basic Info
Statistics
  • Stars: 5
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Topics
bioinformatics publication-data science
Created over 6 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing Funding License Code of conduct Citation Codeowners Security

README.md

Publication Figure Retrieval Tool

This tool provides a method for retrieving figures from NCBI's PMC publications using the Entrez API.

Follow on Twitter GitHub repo size GitHub

Disclaimer

This code is maintained for educational and historical reference purposes only. The tool was originally developed for academic research. Please note that the use of this tool for retrieving figures from PMC publications is subject to NCBI's policies. Use at own risk.

Requirements

  • Node.js >= 20
  • RAM >= 4GB
  • Internet connection with greater than 7mb/s download speed

Installation & Setup

If you would like to run or modify the publication figure retrieval tool locally, clone the repository with git by running the following command:

bash git clone https://github.com/AlexJSully/Publication-Figure-Retrieval.git

Then run

bash npm ci

Running locally

To start and run the publication figure retrieval tool, run the following command:

bash npm run start

If you chose to cancel this process at any time, you can resume and continue where you left off by running the same command. It will store the already processed PMC IDs in build/output/cache/id.json. To reset the cache, delete the id.json file.

Usage

The images are downloaded locally within the build/output directory. They are organized by species then by publication ID.

API Key

If you have an API key, create a .env file in the root directory and add your API key as follows:

bash NCBI_API_KEY=your_api_key_here

With an API key, the tool can retrieve up to 10 calls per second instead of 3. Details on obtaining an API key can be found in the NCBI API key documentation.

Known Issues

We aim to make this tool as perfect as possible but unfortunately, there may be some unforeseen bugs. If you manage to find one that is not here, feel free to create a bug report so we can fix it.

  • None at the moment... Help us find some!

Contributing

Please read CONTRIBUTING.md for more details.

Before contributing, ensure that all tests pass by running:

bash npm run validate

License

GLP-2.0

Maintenance Mode

This project is currently in maintenance mode. This means that:

  • Only critical bug fixes and security updates will be addressed.
  • New feature requests are unlikely to be implemented.

Sponsorship

If you want to support my work, you can do so through the following methods:

  • BTC - 3Lp4pwF5nXqwFA62BYx4DSvDswyYpskBog
  • ETH - 0xc6EB17BD7cbe5976Bfc4f845669cD66Ff340a1A2

Authors

Owner

  • Name: Alexander Sullivan
  • Login: AlexJSully
  • Kind: user
  • Location: Canada
  • Company: Verily

Software Developer @verily-src | Bioinformatician | MSc @BioAnalyticResource

Citation (CITATION.cff)

cff-version: 1.2.0
title: Publication Figure Retrieval Tool
message: >-
    Open-source code for the Publication Figure Retrieval CLI
    tool, which retrieves publication figure images from NIH's Entrez
    API based on a list of species.
type: software
authors:
    - given-names: Alexander
      family-names: Sullivan
      orcid: "https://orcid.org/0000-0002-4463-4473"
      email: alexjsully.connect@outlook.com
contact:
    - email: alexjsully.connect@outlook.com
      family-names: Sullivan
      given-names: Alexander
      country: CA
      orcid: "https://orcid.org/0000-0002-4463-4473"
      website: "https://alexjsully.me/"
identifiers:
    - type: url
      value: "https://github.com/AlexJSully/Publication-Figure-Retrieval"
repository-code: "https://github.com/AlexJSully/Publication-Figure-Retrieval"
url: "https://github.com/AlexJSully/Publication-Figure-Retrieval"
abstract: >-
    This tool provides a method for retrieving publication figure images from NIH's Entrez API based on a list of species.
keywords:
    - bioinformatics
    - publication data
    - science
license: GPL-2.0
commit: 740b403cf6575e00471013b1664339caa8ad61c3
version: 3.0.1
date-released: "2024-08-26"

GitHub Events

Total
  • Delete event: 3
  • Issue comment event: 1
  • Push event: 5
  • Pull request review comment event: 3
  • Pull request event: 6
  • Pull request review event: 8
  • Create event: 4
Last Year
  • Delete event: 3
  • Issue comment event: 1
  • Push event: 5
  • Pull request review comment event: 3
  • Pull request event: 6
  • Pull request review event: 8
  • Create event: 4

Dependencies

package-lock.json npm
  • prettier 2.7.1 development
  • @sentry/core 7.8.0
  • @sentry/hub 7.8.0
  • @sentry/node 7.8.0
  • @sentry/tracing 7.8.0
  • @sentry/types 7.8.0
  • @sentry/utils 7.8.0
  • @tootallnate/once 2.0.0
  • abab 2.0.6
  • acorn 8.7.1
  • acorn 7.4.1
  • acorn-globals 6.0.0
  • acorn-walk 7.2.0
  • agent-base 6.0.2
  • asynckit 0.4.0
  • axios 0.27.2
  • browser-process-hrtime 1.0.0
  • combined-stream 1.0.8
  • cookie 0.4.2
  • cssom 0.5.0
  • cssom 0.3.8
  • cssstyle 2.3.0
  • data-urls 3.0.2
  • debug 4.3.3
  • decimal.js 10.3.1
  • deep-is 0.1.4
  • delayed-stream 1.0.0
  • domexception 4.0.0
  • dotenv 16.0.1
  • entities 4.3.0
  • escodegen 2.0.0
  • esprima 4.0.1
  • estraverse 5.3.0
  • esutils 2.0.3
  • fast-levenshtein 2.0.6
  • follow-redirects 1.14.9
  • form-data 4.0.0
  • html-encoding-sniffer 3.0.0
  • http-proxy-agent 5.0.0
  • https-proxy-agent 5.0.1
  • iconv-lite 0.6.3
  • is-potential-custom-element-name 1.0.1
  • jsdom 20.0.0
  • levn 0.3.0
  • lodash 4.17.21
  • lru_map 0.3.3
  • mime-db 1.51.0
  • mime-types 2.1.34
  • ms 2.1.2
  • nwsapi 2.2.0
  • optionator 0.8.3
  • parse5 7.0.0
  • prelude-ls 1.1.2
  • psl 1.8.0
  • punycode 2.1.1
  • safer-buffer 2.1.2
  • saxes 6.0.0
  • source-map 0.6.1
  • symbol-tree 3.2.4
  • throttled-queue 2.1.4
  • tough-cookie 4.0.0
  • tr46 3.0.0
  • tslib 1.14.1
  • type-check 0.3.2
  • universalify 0.1.2
  • w3c-hr-time 1.0.2
  • w3c-xmlserializer 3.0.0
  • webidl-conversions 7.0.0
  • whatwg-encoding 2.0.0
  • whatwg-mimetype 3.0.0
  • whatwg-url 11.0.0
  • word-wrap 1.2.3
  • ws 8.8.0
  • xml-name-validator 4.0.0
  • xmlchars 2.2.0
package.json npm
  • prettier ^2.7.1 development
  • @sentry/node ^7.8.0
  • @sentry/tracing ^7.8.0
  • axios ^0.27.2
  • dotenv ^16.0.1
  • jsdom ^20.0.0
  • lodash ^4.17.21
  • throttled-queue ^2.1.4
.github/workflows/codeql-analysis.yml actions
  • actions/checkout v2 composite
  • github/codeql-action/analyze v2 composite
  • github/codeql-action/autobuild v2 composite
  • github/codeql-action/init v2 composite
.github/workflows/code-qa.yml actions
  • actions/cache v3 composite
  • actions/checkout v4 composite
  • actions/setup-node v3 composite
.github/workflows/ossar.yml actions
  • actions/checkout v3 composite
  • github/codeql-action/upload-sarif v2 composite
  • github/ossar-action v1 composite