imagej / imagej/imagej.github.io

Bake in citations at build time

Open
#132 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
JavaScript
Stars
30
Forks
203
Avg merge
1h 50m
Merged PRs (30d)
1

Description

The `citation` include accepts a `doi` (or `id`, which then retrieves a DOI), bakes that into as a simple metadata-laden `span` that gets be rewritten by JavaScript upon page load, via the excellent citation-js library. However, we can do better: we could do the DOI resolution with a Jekyll plugin at build time, so the citations get baked into the static HTML during site build, rather than re-resolved on every page load on every person's computer.

The [jekyll-scholar](https://github.com/inukshuk/jekyll-scholar) plugin could be a good starting point, although I don't think it does what we need yet... but would be generally awesome to augment it to use citation-js to fill in the `.bib` data internally and then go from there?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the existing citation include and how citation-js currently resolves DOI or id values in the generated site. Then compare jekyll-scholar's build-time behavior and assess how it could use citation-js to fill .bib data internally. Done means citations are resolved during the Jekyll build and emitted as static HTML without page-load resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, jekyll
Domain
build-system, documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.