# Flaschengeist (frontend) ![status-badge](http://os-sc.org:8000/api/badges/ferfissimo/flaschengeist-frontend/status.svg) Modular student club administration system, licensed under the MIT license. ## Installation ### Requirements ``` "engines": { "node": ">= 14.18.1", "npm": ">= 6.14.12", "yarn": ">= 1.22.0" } ``` So on debian (buster and bullseye) you will need to install node.js and yarn beside the debian packages to meet the needed versions. ```bash pushd ~/opt wget https://nodejs.org/dist/latest-v16.x/node-v16.13.0-linux-x64.tar.xz tar -xJf node-v16.13.0-linux-x64.tar.xz export PATH="$(pwd)/node-v16.13.0-linux-x64/bin":"$PATH" npm i -g yarn npm i -g @quasar/cli popd ``` ### Install the dependencies ```bash yarn install ``` Be aware npm might not work. ### Configure Plugins #### Installing a plugin Simply add it as a dependency and install it, for example installing the `pricelist`-plugin: ```sh yarn add '@flaschengeist/pricelist' yarn install ``` #### Enable / Disable a plugin After installing a plugin you will have to enable it, this is done by adding it to the `plugin.config.js` file. For the example above the file should look like: ```js module.exports = [ // pricelist plugin: '@flaschengeist/pricelist', ]; ``` Remember to rebuild the project ### Configure Backend The application is using the API of [the backend](https://flaschengeist.dev/Flaschengeist/flaschengeist) This access needs to be configured in `src/config.ts'->config.baseURL - either you do have a proxy webserver that maps the '/api' to the backend (http://localhost:5000) or - you do directly configure the backend there:`baseURL: 'http://localhost:5000'`. Be aware not committing this configuration. ### Build the application ```sh yarn quasar build ``` ### Notes on mobile apps (Cordova) For mobile applications older web engines should or must be supported, as manufaturer often do not update their phones, so for building cordova apps set the `BROWSERSLIST_ENV` environment variable to `BROWSERSLIST_ENV=cordova`. This will produce ECDMAscript compatible with iOS 13+ and Android Webview 76 (relased October 2019). ## Development Please refer to our [development wiki](https://flaschengeist.dev/Flaschengeist/flaschengeist/wiki/Development).