GithubHelp home page GithubHelp logo

avanavana / zotero-esovdb Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 37 KB

Gets a specified number of records from the ESOVDB and adds them as items in a Zotero library.

Home Page: http://www.esovdb.org

License: MIT License

JavaScript 100.00%
earth-science airtable airtable-api cache-proxy proxy-server cache zotero zotero-api esovdb earth-science-online-video-database earth-sciences geology

zotero-esovdb's Introduction

zotero-esovdb

Gets a specified number of records from the ESOVDB (Earth Science Online Video Database), adds them as items in a Zotero library (now publicly available here), and then re-syncs the new Zotero version number or newly assigned Zotero keys with the ESOVDB. Since the public ESOVDB Zotero library has topic and series subcollections for each ESOVDB topic and series, this CLI adds videos retrieved from the ESOVDB to their corresponding subcollections in Zotero, or creates a new subcollection if necessary. Uses avanavana/airtable-api-proxy as a back-end for communicating with both the Airtable and Zotero APIs.

Visit the The Earth Science Online Video Database

Use as CLI

To install as CLI: (in the zotero-esovdb directory) $ npm install -g .. To run: zotvid [ options ] (see below).

Additional Notes

Be sure to create a .env file that contains your own ZOTERO_USER (or use ZOTERO_GROUP if you need to switch between your personal Zotero library and a group library) and ZOTERO_API_KEY values, obtainable through the settings page of your Zotero account, and connect to your own instance of avanavana/airtable-api-proxy.

Usage

Usage: zotvid [ -m <number> ] [ --max-records=<number> ] [ -p <number> ] [ --page-size=<number> ]
              [ -c <number> ] [ --chunk-size=<number>] [ -w <secs>] [ --wait-secs=<secs>]
              [ ( -C <date> | -M <date> ) ] [ ( --created-after=<date> | --modified-after=<date> ) ]
              [ -j ] [ --json ] [ -s ] [ --silent ] [ -v ] [ --version ] [ -h ] [ --help ]

Gets a specified number of records from the ESOVDB (Earth Science Online Video Database), adds them
as items in a Zotero library, and then re-syncs the new Zotero version number or newly assigned
Zotero keys with the ESOVDB.  Uses airtable-api-proxy (https://github.com/avanavana/airtable-api-proxy)
for communicating with both the Airtable and Zotero APIs.

Options:
  -v, --version                Displays the current version of zotvid.
  -m, --max-records <number>   Total number of items to add to Zotero. (default: all items)
  -p, --page-size <number>     Maximum number of items (≤100) to retrieve from ESOVDB for each
                               individual page request. (default: 100)
  -c, --chunk-size <number>    Maxmimum number of items (≤50) to add to Zotero in a single
                               request, to avoid rate-limiting. (default: 50)
  -w, --wait-secs <secs>       Number of seconds to wait between Zotero requests, to avoid
                               rate-limiting. (default: 10)
  -C, --created-after <date>   Include only records created after a specified date. Assumes GMT
                               if time is excluded—if included, zotvid uses the local timezone.
                               Excludes option -M/--modified-after).
  -M, --modified-after <date>  Include only records modified after a specified date. Assumes GMT
                               if time is excluded—if included, zotvid uses the local timezone.
                               Excludes option -C/--created-after).
  -j, --json                   Retrieve raw json without syncing with Zotero.
  -s, --silent                 Run without any logging.
  -h, --help                   Display this help file.

Examples:

  $ zotvid
  Syncs all records in the ESOVDB with Zotero.

  $ zotvid -m 9 -p 3
  Gets the latest 9 records in 3 separate Airtable API calls and syncs them with Zotero.

  $ zotvid -M "2020-12-31 00:00 am"
  Syncs all records modified since Dec 31, 2020 at midnight and syncs them with Zotero.

  $ zotvid -j
  Gets all records in the ESOVDB and downloads them to a json file.

MIT License Copyright (c) 2020-2021 Avana Vana

zotero-esovdb's People

Contributors

avanavana avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.