kandimat/README.md

76 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

# Kandimat - Wahl-o-Mat fuer Personalwahlen
2019-09-17 22:12:32 +02:00
2020-05-31 13:46:48 +02:00
## Introduction
The kandimat is a Wahl-o-Mat for elections of candidates.
2020-05-31 13:46:48 +02:00
## 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)
2020-05-31 13:46:48 +02:00
### 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)
2019-09-17 22:12:32 +02:00
## 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`
2019-09-17 22:12:32 +02:00
* To get the (external) user-app source:
```
git submodule update --init
2019-09-17 22:12:32 +02:00
```
### Setup Docker
Install [docker-compose](https://docs.docker.com/compose/install/) on your system.
### Start whole setup
2020-05-31 13:46:48 +02:00
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
2020-05-31 13:46:48 +02:00
**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
2020-05-31 13:46:48 +02:00
```
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).