# 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)

```bash
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:

```nix
{
  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`:

```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.
