Thursday, July 20, 2017

Feature of the Week: Smart bibliographies for Jekyll web pages

If you like Jekyll for rendering web pages then check out the new Jekyll plugin for BibSonomy. If you do not know Jekyll, yet, you might check out its web site and then test the plugin.

What it is

Jekyll is an easy-to-use but powerful generator for static web pages which is used to render HTML pages on GitHub and GitHub pages. It is also quite flexible, since its functionality can be extended by plugins that, for instance, create tag clouds, embed maps, or generate a sitemap.
Recently, we have released the first version of a Jekyll plugin for BibSonomy which renders bibliographies (publication lists) in Jekyll-generated web pages using data from BibSonomy. Every time the site is built, the plugin retrieves the latest posts from BibSonomy and renders them in one of the many thousand available CSL styles. Optionally, the plugin can download and link documents associated with a post and render an Altmetric badge for each publication with a DOI. For instance, my publication list is rendered using a slightly adapted Springer LNCS stylesheet with some CSS that colourises the item bullets in the list using the DBLP color coding scheme for different publication types.

How it looks



The color of the bullets indicates the publication type: conference papers are blue, journal articles are magenta. An entry with an Altmetric badge looks as follows:



How to use

Using the plugin is quite simple: just add some lines of configuration to your site’s _config.yml file and then place the bibsonomy tag into the page where you want the bibliography to be rendered.
  1. First, add the dependency to the plugin to your Gemfile:

    source "https://rubygems.org"
    
    gem 'bibsonomy-jekyll'
    

  2. The most basic configuration just enables the plugin and provides your user name and API key:

    gems:
      - bibsonomy-jekyll
    
    bibsonomy:
      user: yourusername
      apikey: yourapikey
    

    You can get your BibSonomy API key from the settings page.
  3. Options for customization in the bibsonomy section include:

    document_directory: pdf
    style: acm-sig-proceedings
    altmetric_badge_type: 4
    

    where:
    • the document_directory specifies a directory where documents attached to posts shall be downloaded from BibSonomy and linked on the page. If empty, no documents are downloaded.
    • style specifies the name of a CSL style which should be contained in the Ruby CSL library or provided as a file with the same name and the file name extension .csl.
    • altmetric_badge_type adds a HTML <span> element to each publication with a DOI that renders the Altmetric badge with the corresponding id, when the required JavaScript is included on the page.
  4. Now a bibliography can be rendered on any page by including the bibsonomy tag:

    {% bibsonomy user yourusername myown 3 %}
    

    This would render the latest three posts of the user “yourusername” which have the tag “myown”. A variable number of tags can be provided (separated by space) and instead of a user’s posts the posts of a group can be rendered by exchanging user with group followed by the corresponding group name.

That’s it. More details can be found in the plugin’s documentation.

Happy bookmarking!

Popular Posts