Repositories organization

Repositories organization

Please find below the git repositories composing the CHVote platform source code and documentation.

Protocol core

teaser

Protocol core

Set of backend applications running the core of the voting protocol. It includes the Control Components and the Bulletin Board applications.

teaser

Protocol model

Defines the models for the CHVote protocol that are needed outside of the protocol itself.

teaser

Protocol client

Angular library exposing the CHVote algrotihtms to be used by the voting client.

Software as a Service applications

teaser

PACT

Web application used to validate privileged actions on the system.

teaser

Vote Receiver

Web application used by the voters to cast and confirm votes.

teaser

VRUM

Web application used to record and check the usage of the voting rights.

teaser

Backoffice

Web application used to setup elections and votations.

Standalone applications running on offline computers

teaser

U-Print

Standalone application dedicated to the printers designed to generate and visualize the voting material.

teaser

U-Count

Standalone application dedicated to the election officers designed to decrypt the ballots and to compute the tally of the votes.

teaser

CHVote Prover

Standalone application dedicated to the election board designed to run the universal verification checks.

Shared libraries

chvote-interfaces-legacy

Library providing an API to consume and generate the eCH XML files needed in the electronic voting scope. This is the legacy version of the library still used in the CHVote components (migration to the new version was planned in the next release while the project has been stopped).

chvote-model-converter

Library supplying the conversions of eCH models into internal models used for the chvote-protocol and conversely.

jackson-serializer

Library for serializing & deserializing objects between JSON and Java.

file-namer

Library providing utility classes for generating a file name following a common design pattern.

chvote-common-theme

This project supplies the UX elements common to all CHVote Angular frontend applications.

chvote-fx-common

Common library supplying shared JavaFx-related stuff for CHVote projects.

chvote-crypto

Shared library supplying crypto primitives to be used for the CHVote projects.

chvote-interfaces

New version of the library providing an API to consume and generate the eCH XML files needed in the electronic voting scope. Not yet used in CHVote components.

Documentations

teaser

Web pages

The source code of the gitlab.io web pages.

Infrastructure


Département des infrastructures
Office cantonal des systèmes d'information et du numérique
Rue du Grand-Pré 64-66
1211 Genève 2
Tél: +41 (22) 388 00 00