🇪🇺 Vue.js powered voting application. Issues are tracked @ https://git.verdigado.com/NB-Public/kandimat/issues
Go to file
Willi Junga a90ef4f564 Merge pull request 'Update several: Euromat occurences, URL updates and FAQ' (#10) from willi-euromat into main
Reviewed-on: #10
2022-02-02 23:18:01 +01:00
bin Update various: removed euromat occurences, changed Meta URL 2022-02-02 23:14:59 +01:00
public Update various: removed euromat occurences, changed Meta URL 2022-02-02 23:15:56 +01:00
resources Clean-up data structure 2020-05-03 12:32:35 +02:00
src Update various: removed euromat occurences, changed Meta URL 2022-02-02 23:16:47 +01:00
tests/unit 🔧 Migrating to Vue CLI 3 2019-04-08 10:16:16 +02:00
.browserslistrc 🔧 Migrating to Vue CLI 3 2019-04-08 10:16:16 +02:00
.dockerignore Make user app available in docker container 2020-05-03 12:30:15 +02:00
.editorconfig Initial commit 2017-08-09 15:15:42 +02:00
.eslintrc.js Fix calculation of scores 2020-06-27 10:32:46 +02:00
.gitignore Last not Least: Get party details page from backend 2020-08-22 21:14:12 +02:00
.graphqlconfig Add vue-apollo to user-app 2020-06-14 03:00:19 +02:00
.snyk fix: .snyk, package.json & package-lock.json to reduce vulnerabilities 2019-07-04 11:10:11 +00:00
LICENSE Create LICENSE 2020-04-26 11:46:25 +02:00
README.md Update README.md: added Issue note 2022-02-02 22:35:21 +01:00
babel.config.js 🔧 Migrating to Vue CLI 3 2019-04-08 10:16:16 +02:00
dev.Dockerfile Make user app available in docker container 2020-05-03 12:30:15 +02:00
jest.config.js Fix calculation of scores 2020-06-27 10:32:46 +02:00
package-lock.json Rename candymat -> kandimat everywhere 2022-02-02 15:01:15 +01:00
package.json Rename candymat -> kandimat everywhere 2022-02-02 15:01:15 +01:00
postcss.config.js 🔧 Migrating to Vue CLI 3 2019-04-08 10:16:16 +02:00

README.md

KANDIMAT

A Vue.js powered, progressive web voting application for upcoming internal elections of Bündnis90/Die Grünen. Kandimat is hosted as a service of netzbegruenung e.V.

Issues

..are tracked @ https://git.netzbegruenung.de/NB-Public/kandimat/issues

Calculation Model

The calculation model for voting has been defined by the German Federal Agency for Civic Education (Bundeszentrale für politische Bildung). A good overview can be found in this PDF: resources/Rechenmodell des Wahl-O-Mat.pdf.

⌨️ Development

This is a Vue.js progressive web application, developed with @vue/cli.

Command Description
npm install Installs dependencies
npm run serve Serve with hot reload at localhost:8080
npm run build Build for production with minification
npm run test:unit Run all unit tests
npm run lint Runs standard over all .js and .vue files and fixes problems
npm run svg Creates all SVG files used in the application
npm run admin Creates config.yml for Netlify CMS admin UI

Working with GraphQl backend

As a connector to the backend, apollo-vue is used. Queries are written as gql strings. To have schema hints etc, there is a .graphqlconfig file which should help dedicated IDE plugins to infer the GraphQl schema directly from the (running) backend (see main project for more information on how a "running backend" is achieved). For example, the Intellij JS GraphQL plugin will automatically ask to download the schema definition.

Notes

  • To keep the diff to the original euromat source as small as possible certain variables follow a naming convention which may seem weird at first. These include
    • party (better description would be person)

Props

This user app is based on source code of EUROMAT targeted at european elections.