/Polyglot

A full stack vocabulary trainer.

Primary LanguageJavaScriptMIT LicenseMIT

Polyglot

A browser based vocabulary trainer app.

About

Polyglot is a full stack web application that provides an easy-to-use vocabulary trainer.
The three provided layers are:

  • Responsive Web-Interface (Javascript / Bootstrap)
  • Spring-Boot REST-API
  • mySQL data persistence

polyglot

Tutorial

Check out the tutorial page for instruction on how to use the webapp!

Tech Specs

More details on the Polyglot internals here!

Deployment

There are two ways to get Polyglot running: Docker based setup and native setup.

  • Docker is easier to install, but required more resources. Database and Webservice are deployed as individual containers.
  • Native setup integrates into an existing mysql and tomcat installation and therefore consumes fewer resources.

Either way, first step is to clone this repository:

git clone https://github.com/kartoffelquadrat/Polyglot.git
cd Polyglot

Don't forget to change the default DB password in the *.sql scripts and *.properties files.

Docker

  • Build and deploy the containters:
docker-compose up

Native

  • Prepare your existing mySQL database. Use below commands or the provided script:
    mysql -u root -p
USE mysql;
CREATE USER 'polyglot'@'localhost' IDENTIFIED BY 'loh8eeTooj0i';
CREATE DATABASE polyglot;
GRANT ALL PRIVILEGES ON polyglot.* TO 'polyglot'@'localhost';
  • Build the Polyglot war file:
    mvn clean package

  • Deploy target/polyglot.war to your application server.

  • Access the web-frontend.

Contact / Pull Requests