Co-authored-by: James Mills <firstname.lastname@example.org> Reviewed-on: #18 Co-authored-by: James Mills <email@example.com> Co-committed-by: James Mills <firstname.lastname@example.org>
|2 weeks ago|
|deploy||2 weeks ago|
|docs||2 weeks ago|
|public||2 weeks ago|
|.dockerignore||2 weeks ago|
|.drone.yml||2 weeks ago|
|.gitignore||2 weeks ago|
|AUTHORS||2 weeks ago|
|CODE_OF_CONDUCT.md||2 weeks ago|
|CONTRIBUTING.md||2 weeks ago|
|Dockerfile||2 weeks ago|
|LICENSE||2 weeks ago|
|Makefile||2 weeks ago|
|README.md||2 weeks ago|
|api.go||2 weeks ago|
|api_test.go||2 weeks ago|
|api_types.go||2 weeks ago|
|bitcask_store.go||2 weeks ago|
|config.go||2 weeks ago|
|docker-compose.yml||2 weeks ago|
|go.mod||2 weeks ago|
|go.sum||2 weeks ago|
|handlers.go||2 weeks ago|
|jobs.go||2 weeks ago|
|main.go||2 weeks ago|
|memory_store.go||2 weeks ago|
|models.go||2 weeks ago|
|options.go||2 weeks ago|
|router.go||2 weeks ago|
|server.go||2 weeks ago|
|store.go||2 weeks ago|
|utils.go||2 weeks ago|
|version.go||2 weeks ago|
pollinator - a self-hosted open polling and voting web application that respects your privacy and anonymity
pollinator is a self-hosted web application that allows users to participcate
in open polls in a way that both respects their privacy and anonymity.
- Single portable binary
- Simple to setup and maintain
- A slick SPA frontend
- Currently supports two types of polls:
- Open Vote or just
votewhere users can vote for a single question comment or statement.
- Open Questions or just
questionswhere users can create questions they'd like to have answered and vote the questions they'd like to see answered the most.
- Open Vote or just
- Other poll types?
There is also a publicly (freely) available demo instance available at:
User and additional Developer documentation can also be found at:
NOTE: I, James Mills, run this instance on pretty cheap hardware on a limited budget. Please use it fairly so everyone can enjoy using it equally!
Sponsor this project to support the development of new features, improving existings ones and fix bugs!
Table of Contents
- pollinator - a self-hosted open polling and voting web application that respects your privacy and anonymity
Created by gh-md-toc
pollinator was written primarily and firstly as en education exercise in
building a web application complete with backend, ci/cd, frontend and
documentation going from design -> requirements and live in production in a
pollinator was designed and created out of a desire and need to ba
able to openly ask for people's opinions on a particular subject matter,
question, comment or statement or be able to allow folks to create a set of
questions they'd like to hear the answers to and have those voted on.
There are many such publicly available SaaS / Cloud offerings in the wild such as the popular SurveyMonkey, sl.do and many others.. But unfortuantely most if not all are usually pretty expensive to use even for the most simplest use-cases or have very questionable privacy in the first place and many do not offer any form of anonymity at all.
Install from Releases
You can install
pollinator by simply downloading the latest version from the
Release page for your platform
and placing the binary in your
Install from Homebrew
On macOS you can install
pollinator using Homebrew:
brew tap prologic/pollinator https://git.mills.io/prologic/homebrew-pollinator.git brew install pollinator
Install from Source
pollinator from source you can run
go get directly if you have a Go environment setup:
go get git.mills.io/prologic/pollinator
NOTE: Be sure to have
$GOBIN(if not empty) or your
$PATH. See Compile and install packages and dependencies
Or grab the source code and build:
git clone https://git.mills.io/prologic/pollinator.git cd pollinator make build
And optionally run
make install to place the binary
pollinator in your
$GOPATH/bin (again see note above).
Start the server
You can now open the Web UI by navigating to:
You can deploy
pollinator to a Docker Swarm
cluster by utilising the provided docker-stack.yml
Docker Stack. This also depends on and uses the Traefik
ingress load balancer so you must also have that configured and running in your cluster
export DOMAIN=pollinator.yourdomain.tld docker stack deploy -c ./deploy/docker-stack.yml pollinator
In the News
Support the ongoing development of
Interested in contributing to this project? You are welcome! Here are some ways you can contribute:
- File an Issue -- For a bug, or interesting idea you have for a new feature or just general questions.
- Submit a Pull-Request or two! We welcome all PR(s) that improve the project!
Please see the Contributing Guidelines.
Thank you to all those that have contributed to this project, battle-tested it, used it in their own projects or products, fixed bugs, improved performance and even fix tiny typos in documentation! Thank you and keep contributing!
You can find an AUTHORS file where we keep a list of contributors to the project.
pollinator is licensed under the terms of the MIT License