citizenos / citizenos-api

Citizen OS API application - https://api.citizenos.com/
Other
31 stars 7 forks source link

Citizen OS

If you use the Citizen OS open source code, please let us know: info@citizenos.com! <3 We are mostly interested in the usage statistics. Perhaps you can open the stats for us?

Citizen OS is a free participation platform for collaborative text creation, structured discussion and voting. Read about the newest developments on our news page: https://citizenos.com/news/.

:dart: Features

:bulb: Philosophy

The Citizen OS Foundation is a civic tech non-profit organisation based in Tallinn, Estonia.

Our mission is “to empower as many people as possible to participate in respectful, meaningful discussions in order to collaboratively decide on issues that affect their wellbeing."

The main focus of the Citizen OS Foundation is our collaborative decision-making platform for civic initiatives, which is provided free of charge to anyone who wants to use it. The online platform allows for deliberative discussions, collaborative decision-making and voting in situations where it is either impossible or inconvenient for participants to be in the same room.

In Estonia, where a national e-ID system is in place, the Citizen OS platform is also used in situations when a large number of people need to digitally sign a single document, such as people's initiatives, petitions, housing associations agreements and NGO general meetings. Documents signed using the Citizen OS platform are accepted by all levels of government, including the Riigikogu (Estonia’s Parliament) and the national Commercial Register.

We listen to our users in issues.

:eyes: Installation

TOC:

:book: Running locally

:pencil2: Prerequisites

:gear: Installing

:gear: Configuration

We use https://github.com/lorenwest/node-config.

Configuration files are in ./config directory.

Order of applying, further down the list overrides value from the sources above it:

Examples of Citizen OS API configuration: https://github.com/citizenos/citizenos-api/wiki/Configuration

:zap: Running

NOTES:

:hourglass: Updating

You need to do the following to update Citizen OS on your server:

:microscope: Testing

:beetle: Debugging

:warning: Issues

FATAL ERROR: Committing semi space failed. Allocation failed - process out of memory

Node.JS runs out of memory. This can be solved by tuning the garbage collection (GC) of Node.JS runtime via V8 options.

Reading:

Endpoint GET "/api/auth/google/callback" failed miserably. Status: undefined Stack: InternalOAuthError: failed to fetch user profile

Google+ API is not enabled. Enable Google+ API at https://console.developers.google.com/apis/library/plus.googleapis.com by clicking "ENABLE".

:book: Contributing

Pull requests

DB changes

DB changes require migrations, please read https://github.com/citizenos/citizenos-api/wiki/DB-Migrations

:book: Improvement ideas