87 lines
2.1 KiB
Markdown
87 lines
2.1 KiB
Markdown
# Flaschengeist (frontend)
|
|
|
|
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).
|