selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Bitpoll logo

Self-host Bitpoll

0.11.0

Django-based scheduling and polling web app

ReleaseOpen SourceGPL-3.0
Updated4 months ago
LanguagePython
Setup difficultyModerate
Stars
318
Ports
3008 (uwsgi socket), 3009 (HTTP server)
Requires
SQLite
Docker
ghcr.io/fsinfuhh/bitpoll
Install with Docker
Poll creation step 1Poll creation step 2Poll creation step 3Voting viewPoll results view

What is Bitpoll?

Bitpoll is a Django-based tool for scheduling meetings and running polls, rewritten from the earlier Dudel project. Organizers can create polls for full-day events or specific time slots with custom time classes. Polls can be public or private (invite-only), and voting can be anonymous or require a name with optional registration. The software supports LDAP authentication and OpenID Connect via Keycloak for single sign-on. Deployment options include a Docker image on ghcr.io (exposing uwsgi on port 3008 and HTTP on 3009) or a manual Python installation managed with uv. The default database is SQLite; PostgreSQL is available for production. The interface provides a multi-step poll creation wizard, a voting screen, and a results view. No dark mode, mobile app, or FAQ are documented.

Should you self-host Bitpoll?

Bitpoll scores 46/100 on selfhost.directory (how scoring works) and ranks #6 of 8 in Scheduling & Booking. It has 318 GitHub stars.

It shipped 2 stable releases in the past year. The latest, 0.11.0, came out on 22 May 2026. New versions land roughly every 2 weeks.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is GPL-3.0-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is Rallly (69/100, 5 329 stars). It scores higher overall, so compare the two before you pick. See Bitpoll vs Rallly side by side.

Features

  • Anonymous Voting
  • Custom poll URLs
  • Date and time polling
  • LDAP Authentication
  • Multi-language Support
  • OpenID Connect Authentication
  • Private polls
  • Registration requirement
  • Sentry error reporting

Bitpoll README

How to install Bitpoll

Install Bitpoll with Docker

Docker Engine
Environment variables
Settings via run/config/settings.py (SECRET_KEY, DATABASES, ALLOWED_HOSTS, etc.)

mkdir -p run/{log,static,config} wget https://raw.githubusercontent.com/fsinfuhh/Bitpoll/master/bitpoll/settings_local.sample.py -O run/config/settings.py

Edit run/config/settings.py (database, secret key, allowed hosts)

docker run -a stdout -a stderr --rm --name bitpoll -p 3008:3008 -p 3009:3009 --volume ./run/static:/opt/static --volume ./run/config:/opt/config ghcr.io/fsinfuhh/bitpoll

Container listens on ports 3008 (uwsgi) and 3009 (HTTP). Static files served from run/static at /static/.

Bitpoll releases & version history

More in Scheduling & Booking

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…