Documentation of the MintApps
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

1.7 KiB

Architecture

Client

The client is based on the programming language JavaScript and can be used locally or via a network using any modern browser. Technically, the MintApps represent a "single-page application" based on the following components:

  • vue.js, in version 3.x strictly using the composition API
  • vue-router in hash mode to allow offline use as well
  • vue-i18-next for internationalisation
  • vue-cli to make work easier :-)
  • katex for scientific formula setting
  • markdown-it for formatting texts
  • npm as a package manager.

In addition, specific libraries are used by individual apps, e.g. to create QR codes. Bootstrap is not used (anymore), only own CSS files are integrated.

All libraries are installed locally (using npm) and linked by webpack so that no connections to other servers are opened when the apps are loaded.

Server

In addition to the client, the MintApps contains an optional server component that serves to synchronise data between the clients of different users. For example, several people can solve a puzzle or take part in a quiz at the same time.

This component is based on PHP (version 7 or higher) and requires a database (mysql or mariadb) to temporarily store the synchronisation data. It is therefore easy to install on a classic managed web hosting.

Data

Also optional are the quiz or game data that can be created by an integrated editor of the respective app. JSON is used as data format, in which graphics are embedded when required.