Skip to content

alexbokos/open.flashcards

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Open Flashcards

An open source tool to help you learn and revise words, while you are studying a foreign language. It is a desktop application, that makes use of Spring Boot, Thymeleaf and MongoDB to expose a responsive Bootstrap browser GUI, that can be used to add new words in the database or test yourself with the ones already registered.

How to run

Docker Compose

The easiest way to run the application is using Docker and Docker Compose. Once you have installed Docker Engine and also Docker Compose, get the source code either by cloning the Github repository or by downloading the zip file. Then, inside the project's directory run:

docker-compose up -d 

that will prepare the containers needed for the application to run. Then you can browse the application at http://localhost:8090/flashcards.

Docker

Docker Compose makes use of Docker Engine and orchestrates the actions that need to be done to run the application. You can also run the project using plain Docker, as long as you do the same things that Docker Compose is configured to do. Specifically, you will need to create 3 containers:

  • a data-only container that will be used as a datastore.
  • a database container that will run MongoDB.
  • a web application container that will run the actual application.

To create the data-only container:

docker create -v /data/db --name data_container ubuntu:16.04

To create the database container and run it linked to the data-only container:

docker build --tag alkarn/mongodb -f Dockerfile_MongoDB .
docker run -d --volumes-from data_container --name mongodb alkarn/mongodb

To create the application container and run it linked to the database container:

docker build --tag atrav/flashcards .
docker run -d -p 8090:8080 --link mongodb:mongodb --name flashcards atrav/flashcards 

Then you can browse at http://localhost:8090/flashcards.

Maven

Of course, you can still build the project using Maven, by typing

mvn install

in the source directory. This will create a target/open.flashcards-1.0-SNAPSHOT.jar jar file, that you can then run with:

java -jar target/open.flashcards-1.0-SNAPSHOT.jar

from the source directory. In this case though, you have to also:

  • manually install MongoDB
  • add a mongo alias in your local /etc/hosts file corresponding to your localhost

Then you can browse at http://localhost:8090/flashcards.

About

An open source tool to help you learn and revise words, while you are studying a foreign language.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors