Build Status Code Coverage SonarCloud Latest Release Twitter Follow


VocabHunter is a system to help learners of foreign languages. The best place to go for information about VocabHunter is the project website: vocabhunter.github.io.

To get all the latest news about VocabHunter including announcements of new releases, follow @vocabhunterapp on Twitter.



You will need Java 11 to build and run VocabHunter. The version provided by AdoptOpenJDK is an excellent choice for this. Everything else, including Gradle, will be downloaded by the build process.

How To Run VocabHunter

Go to the download page of the website to get the latest release of VocabHunter. Alternatively, you can run the development version from the command line as follows:

$ ./gradlew :gui:run

How to Use VocabHunter

Do you want to use VocabHunter to help you to learn a foreign language? You'll find everything you need to know to get you started in the guide How to Use VocabHunter.

How To Build VocabHunter

You can build the entire system with the following command:

$ ./gradlew clean build

How To Run The GUI Test

By default the GUI test runs as part of the standard Gradle build, in headless mode. If you'd like to run the GUI test in a non-headless mode so that you can see what is happening, use the following command:

$ ./gradlew :gui:test --tests io.github.vocabhunter.gui.main.GuiTest --rerun-tasks -PnoHeadless

How to Build The Installable Bundle

Using the Java Packager with JDK 11

In the article Using the Java Packager with JDK 11 you can read about how installable bundles for Mac, Windows and Linux are created and how you can do this in your own project. These self-contained installers allow users to setup VocabHunter on their computer without the need to first install Java.

You can also find full, step-by-step instructions for creating the VocabHunter installable bundle in PACKAGING.md.

Technical Articles

If you'd like to know more about how VocabHunter works and the technologies used to build it, take a look at the following articles that explore various aspects of the implementation: