eLife Lens provides a novel way of reading scientific papers that is web-centric: it separates text from figures and allows easy navigation throughout the article. Lens was originally developed by Ivan Grubisic in collaboration with the open-access publisher eLife, and is now used on their website. Lens was released as open-source code, and is being used by several other journals. Because it works by parsing NLM XML (an XML format used by most publishers to produce the PDF and HTML versions of their articles already) it could theoretically be used to read content from any journal, as long as the XML is available and can be legally scraped.
Ivan's project made heavy use of jQuery to retrieve, parse, and render search results, which made refactoring difficult. I used parts of the codebase to begin my own version of the app based on Node.js and React, which I call Monocle. This streamlined the UI and made iterating on development much quicker. It also allowed cleaner separation of the logic: I have released standalone modules handling the PMC API and a dedicated Lens parser that may be useful in their own right. Further development will proceed from here.