f7a56a0bed
Furthermore, submodule link to new public repo
76 lines
2.1 KiB
Markdown
76 lines
2.1 KiB
Markdown
# Kandimat - Wahl-o-Mat fuer Personalwahlen
|
|
|
|
## Introduction
|
|
|
|
The kandimat is a Wahl-o-Mat for elections of candidates.
|
|
|
|
|
|
## Services
|
|
|
|
The project consists of three services:
|
|
* GraphQL backend (+ postgres)
|
|
* Redaktions-App
|
|
* User-App
|
|
|
|
### Redaktions-App
|
|
|
|
The Redaktions-App is used for editors and candidates to provide questions and answers.
|
|
|
|
The app is written with react and appollo-react to access the backend.
|
|
|
|
See also: [Service Readme](redaktions-app/README.md)
|
|
|
|
### User-App
|
|
|
|
The User-App is based on the [EuroMat](https://www.euromat.info/en) (Source: https://github.com/morkro/euromat)
|
|
and is used to find the perfect candidate for everyone who is allowed to vote.
|
|
|
|
It is written in vue.js.
|
|
|
|
See also: [Service Readme](https://git.verdigado.com/Netzbegruenung/kandimat-user-app/src/README.md)
|
|
|
|
### Postgraphile (Backend)
|
|
|
|
A package which creates an GraphQL api based on an underlying postgres schema.
|
|
|
|
For more on this (e.g. how to use the graphQl api by yourself) see [backend readme](backend/README.md)
|
|
|
|
## Development Setup
|
|
|
|
### Check-out repository
|
|
* [Install git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
|
|
* `git clone https://git.verdigado.com/Netzbegruenung/kandimat.git`
|
|
* To get the (external) user-app source:
|
|
```
|
|
git submodule update --init
|
|
```
|
|
|
|
### Setup Docker
|
|
Install [docker-compose](https://docs.docker.com/compose/install/) on your system.
|
|
|
|
### Start whole setup
|
|
|
|
For dev setup:
|
|
```
|
|
docker-compose up
|
|
```
|
|
|
|
* GraphQL IDE/GUI: http://localhost:5433/graphiql
|
|
* GraphQL Endpoint: http://localhost:5433/graphql
|
|
* UserApp: http://localhost:8080
|
|
* RedaktionsApp: http://localhost:8081
|
|
* Postgres database: http://localhost:5432
|
|
|
|
**Note:** The database will use a volume to persist changes in-between runs.
|
|
To start with a clean database, either delete the volume from the postgres configuration in the compose file
|
|
or run
|
|
```
|
|
docker container rm kandimat_postgres_1
|
|
docker volume rm kandimat_db-data
|
|
```
|
|
before starting docker-compose.
|
|
|
|
### Manual testing
|
|
|
|
Either go to the User-App and mess around with the existing test data or use GraphiQL directly (links are above).
|