votelog
is a web application that provides a convenient interface for the Swiss parlaments's Curia Vista database.
The web frontend can be found at http://prototype.votelog.ch/.
Work on the M4 feature set is ongoing.
Up to M3 the following features are planned or implemented:
-
Creation of user accounts
-
Protection of resources using permission framework
-
Creation of organisational accounts
-
Assignment of permissions using roles/capabilites
-
Retrieval of CuriaVista entities such as parliamentarians, affairs, bills and votes
-
Search index for CuriaVista entities
-
Assignment of 'preferred' voting results by organisations
-
Ranking of politicians according to organisations' voting preferences
The votelog
part facing the Curia Vista database is written in Python.
The server part of votelog
is written in Scala and uses sbt
for building the software. The following instructions assume that sbt
has been installed
Clone and checkout repository
$ git clone [email protected]:esarbe/votelog.git
Launch into the sbt build environment
$ cd votelog
$ sbt
Start webserver application:
sbt:votelog> run
The votelog
HTTP server application configuration is located at src/main/resources/application.conf
. It
allows configuration of port and interface the HTTP server listens to. The configuration settings can be
overwritten by setting the corresponding environment variables.
Environment Variable | Function |
---|---|
CURIAVISTA_DATABASE_URL | CuriaVista database URL |
CURIAVISTA_DATABASE_PASSWORD | CuriaVista database password |
CURIAVISTA_DATABASE_USER | CuriaVista database user |
SECURITY_PASSWORD_SALT | application security salt |
SECURITY_SECRET | application security secret |
VOTELOG_DATABASE_URL | votelog database URL |
VOTELOG_DATABASE_USER | votelog database user |
VOTELOG_DATABASE_PASSWORD | votelog database password |
INDEX_DIRECTORY | file system directory location for lucene search index files |
HTTP_DOMAIN | http domain (defaults to votelog.ch ) |
Documentation for the VoteLog REST API can be found at https://api.votelog.ch/api/v1/doc/
docker-compose -f testing/postgres.yml up postgres
This project is licensed under the AGPL-3.0-or-later
. See LICENSE.md
This project includes parts that are licensed unter the The MIT License (MIT). The corresponding source files have an appropriate license header.