Coder Social home page Coder Social logo

democracy's Introduction

Democracy

Democracy is a web application for creating and hosting online votes that follow different election systems (depending on what you are voting for). The idea is to add a little integrity to voting done in small organisations, even if the stakes are low!

Installing

I will, when finished, provide and support:

  • RPMs (for openSUSE/SUSE #FuckRedHat)
  • debs (For debian stable and oldstable)
  • openBSD package

For those running on an unsupported system, I will provide:

  • AppImage

But really you should build it from source because I'm not going to fix appimage issues.

Building From source

You need to have sqlite or prostgres, cabal and ghc installed. This is currently only tested with ghc-9.2.8. The easiest way to get cabal and ghc is with ghcup.

Then all you have to do is open a terminal and naviagte to the source code and type:

cabal -O2 build
cabal -O2 install

Running

If you have installed it, then simply start the service!

Linux (systemd)

openBSD (rcctl)

Running from source

If you are running from source, simple run:

./democracy

You probably want to setup some kind of service to do this for you, but I'll leave that to you.

Configuring

Not implemented yet!

TODO:

  • Welcome Page
  • Database backend
  • Secure password storage
  • Login system with Email
  • Proper authentification with servant
  • Simple Votes
  • Election results page
  • Edit some settings during votes
  • Password Change
  • Multiple people votes
  • First past the post
  • Single Transferable
  • Postgres backend
  • TOML Config
    • Switch DB backend based on conf
  • Pledge and unveil for openBSD
  • Password protected votes
  • Email code protected votes
  • Login based protected votes

Very extended TODO list

  • Multiserver mode with signing roles
  • Ring Signatures
  • GPG plugged desktop app

democracy's People

Contributors

yobson avatar

Stargazers

Anthony avatar Kjetil Fantoft Alvestad avatar Nils Michael avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.