No description
| __pycache__ | ||
| assets | ||
| council | ||
| fragdenrat | ||
| staticfiles | ||
| templates | ||
| .gitignore | ||
| db.sqlite3 | ||
| favicon.svg | ||
| flake.lock | ||
| flake.nix | ||
| fragify.py | ||
| gulpfile.js | ||
| Makefile | ||
| manage.py | ||
| module.nix | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| result | ||
FragDenRat
FragDenRat ist eine Django‑Webanwendung, inspiriert von abgeordnetenwatch.de, mit der öffentlich Fragen an Stadträt:innen in Gemeinderäten gestellt und veröffentlicht werden können.
Datenmodell
- Gemeinde (
PublicBody): Verwaltungseinheit (z. B. Stadt/Gemeinde) - Partei (
Party): Politische Partei - Stadträt:in (
Member): Mitglied eines Gemeinderats; kann einer Gemeinde und optional einer Partei zugeordnet sein - Frage (
Question): Frage an eine:n Stadträt:in - Antwort (
Answer): Antwort auf eine Frage
Entwicklung (lokal)
nix develop
export DJANGO_SETTINGS_MODULE=fragdenrat.settings
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver 0.0.0.0:8000
Dann im Browser öffnen: http://localhost:8000
NixOS
Binde das Modul in deine flake.nix ein und aktiviere den Service:
{
inputs.fragdenrat.url = "git+https://git.project-insanity.org/onny/fragify.git"; # Repo-URL anpassen
# ...
outputs = { self, nixpkgs, ... }@inputs: {
nixosConfigurations.host = inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
inputs.fragdenrat.nixosModule
({ pkgs, ... }:{
nixpkgs.overlays = [ inputs.fragdenrat.overlay ];
})
./configuration.nix
];
};
};
}
In configuration.nix:
services.fragdenrat.enable = true;
Der Dienst stellt einen uWSGI‑Socket unter unix:${config.services.uwsgi.runDir}/fragdenrat.sock bereit und liefert statische Assets unter /static/ aus.
Technisches
- Framework: Django
- UI: Bootstrap 5
- WSGI: uWSGI (über NixOS‑Modul)
- Datenbank: SQLite standardmäßig (anpassbar über Django‑Settings)
Lizenz & Beiträge
Lizenz wie im ursprünglichen Projekt. Beiträge sind willkommen – gerne Issues und Pull Requests eröffnen.