Specvis is a desktop application designed for visual field examination in humans.
Java Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


Specvis v1.1.1



Specvis is a desktop application designed for fast and reliable perimetry-like visual field examination. It is written in Java to ensure considerable portability and is licensed under GNU GPLv3.


Specvis requires Java Runtime Environment (JRE) in version 8u121 or above. You can check whether your computer has an appropriate JRE version by typing java -version in the terminal/ command window. You can download the newest JRE version here.


You can download Specvis on its website. What will be downloaded is a *.zip archive. Unzip it in a desired location. The content of the unzipped folder should contain Specvis.jar file. You will use this file to launch Specvis application.

Quick Start

In order to launch Specvis application double click on the Specvis.jar file, or type java -jar Specvis.jar in the terminal/ command window (while in the Specvis main directory). For further information about conducting a very first visual field examination please visit Specvis quick start guide on its website.

Resources for Learning Specvis

Cite Specvis

If you use Specvis in your research, please cite:


I'm open to many types of contributions, from bugfixes to functionality enhancement and introduction. Specvis was created by one person, but is meant to be maintained by a community of academics and clinicians, and as such, I seek enhancements that will likely benefit a large proportion of the users who use the application.

Before starting new code, I highly recommend to get acquainted with Specvis/TODO.txt list and opening an issue on Specvis GitHub to discuss potential changes. Getting on the same page as the maintainers about changes or enhancements before to much coding is done saves everyone time and effort! Of course, I encourage to propose changes, that are not listed in Specvis/TODO.txt.

Any contributions to Specvis, whether bug fixes, improvements or completely new functionalities, should be done via pull requests on GitHub. I assume, that you are acquainted with contributing to GitHub projects and you have already a GitHub account. From this point, below I provide step-by-step guide how to start your contribution to Specvis with the use of IntelliJ IDEA environment.

  • Download, install, and launch IntelliJ IDEA environment.
  • Log into your GitHub account via IntelliJ, by choosing File/Settings/Version Control/GitHub and filling up all text fields with appropriate information. In Host text field write github.com. In Login and Password text fields provide your GitHub account credentials. Next, hit Test button, in order to test IntelliJ connection with your GitHub account. Finally, click Apply/OK button.
  • Clone Specvis repository (https://github.com/piotrdzwiniel/Specvis.git) based on guidelines available here.
  • Work only on branch version-X-X-X. More on branches below.

Coding Guidelines


Specvis GitHub repository will always have two active branches: master and version-X-X-X. Work only on the second one.

Pull Requests

  • Address one issue per pull request (PR).
  • Avoid unnecessary cosmetic changes in PRs.
  • Update the Specvis/doc/whats_new.txt file last, after PR acceptance and before merge, to avoid merge conflicts.

Code Style

  • I recommend to use IntelliJ IDEA environment for coding in Java.
  • Please follow Google Java Style Guide.
  • Please write self-descriptive code with detailed comments where needed (especially describe with javadoc comments functionality of the implemented methods).


If there is any technical problem with Specvis, please go to the issues section on Specvis GitHub and try to look for the solution to your problem among existing topics. If you can't find the solution, than create a new issue and describe your problem as accurate as it is possible. If something is not working in Specvis (it freezes, behave oddly etc.), than try to run it from the terminal/ command window and than try to force this situation when something is not working. If any error will appear in the terminal/ command window, copy it and include it in the description of the issue. Remember, the more information you'll provide about the problem you've encountered using Specvis, the bigger chance that this problem will be solved and will not occur any more.

For any questions write at piotr.dzwiniel@gmail.com.