Stallion is an extended PDF viewer based on PDF.js. It provides researchers with tools that make paper reading simpler. Some features include intuitive peeking routines for definition review, better handling of references and adding shorcuts to arbitrary locations in the document.
You can play around with our demo!
You can also visit us on our website: For installation instructions click here:If you are experiencing trouble, please let us know.
Help us! Contribute
Note: We are not affiliated with Mozilla. We share nothing apart from keen appreciation for the open source community. None of our actions reflects on them.
Our goal is to maximize research productivity. We try to make a user-friendly PDF viewer with extra features that are: intuitive, useful and configurable with little effort. There is no need to learn how to use the viewer. You can just use it like any other viewer. However, the viewer will react differently, (hopefully) in a more intuitive way. Some key features of the viewer (we are still halfway through):
- Links: We replace internal links with split view peekers that show you the requested page along with the original page.
- Reference Metadata & Abstract: Presenting article metadata and abstract for articles for references in the document.
- "Remind" boxes: Identifies mentions of defintions, theorems, references in the document and so on, and provides a reminder from their location in the document.
When clicking on internal links, the will not jump to the requested position. Instead, the requested page will be presented on the side for convenient review.
Select a reference and double click /
(slash). If it is identified as a reference by Stallion, it tries to resolve it in two steps:
-
Stallion sends a request to CrossRef. If the reference is identified correctly, Stallion will present article metadata.
-
After metadata is extracted, Stallion sends a request to Semantic Scholar. If the record is found, an abstract appears soon after.
Together with the above mentioned tweaks, we provide extra features for even better experience that require (very little) introduction.
With simplicity as a core principle in Stallion, we introduce the (soon to be famous) Slash Bar (triggered by pressing /
anywhere in the document).
The slash bar allows you to type commands instead of using on-screen buttons.
-
outline
- Toggle document's outline (if exists). -
toolbar
- Toggle PDF.js-derived toolbar (hidden by default). -
back
- Go back. -
page
number
- Go to page. -
zoom in/out [
digit
]
- Zoom. digit is optional. If specified, determines iterates the operation digit times.
shortcut/name/dub
name
- Set shortcut to current location in document.jump
name
- Go to shortcut.fgoto
SearchPhrase
- Find next occurence of the search phrase. You are advised to use the find bar instead (Ctrl+F
).fpeek
SearchPhrase
- Opens a Peek Box for the search phrase.
Note: Typing wrong commands can get offensive.
To get a local copy of the current code, clone it using git:
$ git clone https://github.com/guyd1995/stallion.git
$ cd stallion
Next, install Node.js via the official package or via nvm. You need to install the gulp package globally (see also gulp's getting started):
$ npm install -g gulp-cli
If everything worked out, install all dependencies for PDF.js:
$ npm install
Finally, you need to start a local web server as some browsers do not allow opening
PDF files using a file://
URL. Run:
$ gulp server
and then you can open:
Please keep in mind that this requires an ES6 compatible browser; refer to Building PDF.js for usage with older browsers.
It is also possible to view all test PDF files on the right side by opening:
To generate the browser extension from the code, run:
$ gulp chromium
It generates a Chrome extension, but it can be exported to Firefox as is.
PDF.js is a Portable Document Format (PDF) viewer that is built with HTML5.
PDF.js is community-driven and supported by Mozilla Labs. Their goal is to create a general-purpose, web standards-based platform for parsing and rendering PDFs.
Please, visit their repository for additional information.
We base our contribution guidelines on those of PDF.js. Also, recall we build upon their code base and utilize changes in their repository. All in all, you are very much encouraged to contribute to PDF.js. We advise you to take a glance at their code contribution guide (see below).