/VocabHunter

VocabHunter helps learners of foreign languages find vital new vocabulary to study.

Primary LanguageJavaApache License 2.0Apache-2.0

VocabHunter

Build Status Code Coverage Latest Release Twitter Follow

VocabHunter

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.

VocabHunter

Prerequisites

You will need Java 8 to build and run VocabHunter. You can download it from the Oracle Website. 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 Build An Installable Bundle

VocabHunter is distributed as an installable bundle, with everything the user needs packed into the file. On Mac this is a .dmg file, on Windows an .exe installer and on Linux a .deb package. On Windows you need to install Inno Setup.

You can launch the following command to create the bundle:

$ ./gradlew clean build jfxNative

When the build is complete, you will find the bundle file in the directory package/build/jfx/native.

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

Using the OpenJDK

VocabHunter works well if you choose the OpenJDK 8 instead of the Oracle JDK. If you choose the OpenJDK you may find you need to install JavaFX separately. For example, on Ubuntu 16.04 you can install the OpenJDK 8 and JavaFX as follows:

$ sudo apt-get install openjdk-8-jdk
$ sudo apt-get install openjfx

Unfortunately the headless tests don't currently work on the OpenJDK when running the Gradle command line build (see related issue #13). To work around this either run the build without the headless option by adding -PnoHeadless or skip the GUI tests using -PskipGuiTests.

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:

VocabHunter