Giter Club home page Giter Club logo

simple-vote's Introduction

SimpleVote โ€” An open-source, live updating, voting platform.

Build Status

SimpleVote is an open-source, self-hostable, live-updating voting/polling platform, for both live meetings, or extended polls.

Polls can be dynamic, meaning users can(if allowed) contribute options and questions themselves.

It uses range voting (also known as olympic score voting) for all your poll options. Range voting is more expressive than simple ๐Ÿ‘ or ๐Ÿ‘Ž votes (IE approval). It also beats out IRV, and first past the post for minimizing voter regret.

Features:

  • Polls can have multiple questions.
  • Anyone can edit, delete, or create additional questions, and options (if allowed by the creator), at anytime.
  • Live chat on the sidebar.
  • Questions can have expiration times, and thresholds (Making sure options with too few votes don't win).
  • Easily shareable poll links.
  • Image and markdown support for all questions and candidates.
  • Questions can hide voter names (anonymous voting).
  • Questions can be either Range, or Pointing Poker style.

Tech used:

Check out a sample poll here.

Change log

Screenshots

image


Installation

If you want to self-host or help develop simplevote.

Docker

Requirements

  • Docker
  • docker-compose

Start the docker instance

git clone https://github.com/dessalines/simple-vote
cd simple-vote
// edit ARG ENDPOINT_NAME=http://localhost:4567 in ./Dockerfile to your hostname
docker-compose up

Goto to http://localhost:4567

Local development

Requirements

  • Java 8 + Maven
  • Node + npm/yarn, nvm is the preferred installation method.
  • angular-cli: npm i -g @angular/cli@latest
  • Postgres 9.3 or higher

Download SimpleVote

git clone https://github.com/dessalines/simple-vote

Setup a postgres database

Here are some instructions to get your DB up and running.

psql -c "create user simplevote with password 'asdf' superuser"
psql -c 'create database simplevote with owner simplevote;'

Open your pom.xml

cd simplevote
vim service/pom.xml

Edit it to point to your own database:

<!--The Database location and login, here's a sample-->
<jdbc.url>jdbc:postgresql://127.0.0.1/simplevote</jdbc.url>
<jdbc.username>simplevote</jdbc.username>
<jdbc.password>asdf</jdbc.password

Install SimpleVote

For local testing:

./install_dev.sh and goto http://localhost:4567/

For a production environment, edit ui/src/environments/environment.prod.ts to point to your hostname, then run:

./install_prod.sh

You can redirect ports in linux to route from port 80 to this port:

sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 4567


Bugs and feature requests

Have a bug or a feature request? If your issue isn't already listed, then open a new issue here.

TODO

  • Set up travis-ci

simple-vote's People

Contributors

daniel-mietchen avatar dessalines avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

simple-vote's Issues

Unable to connect to install correctly

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building simplevote 1.0.0
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ simplevote ---
[INFO] Deleting /home/hk/Desktop/simple-vote-master/service/target
[INFO]
[INFO] --- properties-maven-plugin:1.0-alpha-2:write-project-properties (default) @ simplevote ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ simplevote ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 27 resources
[INFO]
[INFO] --- liquibase-maven-plugin:3.5.1:update (default) @ simplevote ---
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.806 s
[INFO] Finished at: 2017-12-19T14:59:32+08:00
[INFO] Final Memory: 13M/166M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.liquibase:liquibase-maven-plugin:3.5.1:update (default) on project simplevote: Error setting up or running Liquibase: liquibase.exception.DatabaseException: org.postgresql.util.PSQLException: FATAL: password authentication failed for user "simplevote" -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

I got to this stage and dont know what is wrong

Some other warning and error

Excluding it from installation.
[3/4] Linking dependencies...
warning " > [email protected]" has incorrect peer dependency "@angular/core@^2.0.0||^4.0.0".
warning " > [email protected]" has incorrect peer dependency "@angular/http@^2.0.0||^4.0.0".
warning " > [email protected]" has incorrect peer dependency "@angular/compiler@^2.3.1 || >=4.0.0-beta <5.0.0".
warning " > [email protected]" has incorrect peer dependency "@angular/core@^2.3.1 || >=4.0.0-beta <5.0.0".

cssWarning: Can't resolve all parameters for NG2WebSocket in /home/hk/simple-vote/ui/src/app/services/ng2-websocket.ts: (?, ?, ?). This will become an error in Angular v6.x
Warning: Can't resolve all parameters for NG2WebSocket in /home/hk/simple-vote/ui/src/app/services/ng2-websocket.ts: (?, ?, ?). This will become an error in Angular v6.x

Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher
nohup: redirecting stderr to stdout

Windows installation

Hello there, thanks for your afford making this software possible.
I have to install the simple-vote software on a windows environment, but the installation is challenging. Iยดm currently following the steps of the install_prod.sh but I`m failing to build the project in maven. Maybe it would be better also for other guys who want to run this on Windows to provide a binary version for windows?

Self hosted Install help

Can someone help me out, I'm trying to install on Ubuntu vps I already follow as per guide but at the end I can't found /Config directory for edit host production.

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.