This post is an overview of main features of sioyek, a PDF viewer optimized for reading research papers and textbooks.

Suppose you are reading a textbook with a lot of references. Something like this:

Imagine how much time and context you lose by scrolling back and forth every time we see a reference. Sioyek automatically detects the reference targets (even if the document doesn’t have links, which is the case for the document in this example) and jumps to references. You can also mark your location before the jump so that you don’t lose your context when you come back:

But wait, there is more! You don’t even have to jump to the references because sioyek can show a preview of the referenced location:

But wait, there is more! The marker used in the first video to mark the line can also be moved to highlight the current line being read. This has many advantages:

  • Makes the current line stand out, which makes it more readable, especially for people with dyslexia
  • You never lose the context of which line you were reading (e.g. when someone calls you)
  • Automatically handles multicolumn documents
  • Since there is usually only one reference on the current line, we can automatically detect it and show the destination just by pressing a button, without even needing to click on the reference.

But wait, there is more! You can search the papers in google scholar just by middle-clicking on their name. Or you can download them directly from google scholar and scihub by control+clicking on their name. And the beautiful thing is that last feature (downloading papers from google scholar and scihub) is not a built-in feature but it is implemented using an extension, and you can create similar extensions of your own! This is the documentation on how to build your own extensions, and these are some of the extensions that I have built (including the one that downloads from google scholar and scihub).