Flashy
About
Flashy is an application which can help you make and memorize flashcards. It's meant to be used as a study tool, that keeps track of all your sets of flashcards.
A more in depth description of flashy's features can be found in the user story
Previews:
Main page:
Flashy in action:
Note: these images are just a concepts, the application may look a little different at release.
Usage
To use the application, you can download and run the jar file found in the latest release.
You can also use the badge to download the latest version. Note that this might be unstable.
To run it, you're going to need do download Java.
Development requirements
The easiest solution to get the development environment up and running, is to open the project in Gitpod
If you want to work on it locally, you're going to need the following things:
Launch with JAR
You can start the project by running either run.bat (windows), or run.sh (mac, linux, etc...). This will compile the application into a jar-file, which will end up in target, and then execute it. After running this script once, you will also be able to launch the jar-file directly in the file explorer, or by opening a terminal in the current directory and execute this command:
$ java -jar flashy/target/flashy.jar
Launch Manually
If you want to run the application manually without creating a jar file, open a terminal in the current directory, and execute the following commands:
$ mvn compile
$ cd fxui
$ mvn javafx:run
Note: Each time you update code outside of the fxui directory, you will need to move out to the current directory and run mvn clean compile before running mvn javafx:run inside fxui again.
Modules
This project is split into modules. Each module is responsible for separate parts of the application.
| Module Name | Description |
|---|---|
| Core | The base classes and logic used everywhere in the application |
| FXUI | The desktop application |
| Report | A special module used to generate code coverage reports |
| .... | (More modules are probalbly coming) |
API (Coming soon)
This application also has an API, which makes it easy to extend the application to other platforms, like websites or phone apps.
