initial commit

This commit is contained in:
Pirmin Hinderling (fedora)
2026-07-07 13:02:49 +02:00
commit 2c7fb7d030
30 changed files with 1666 additions and 0 deletions
+128
View File
@@ -0,0 +1,128 @@
# Faktenkompass Wissensdatenbank für überprüfbare Behauptungen
Eine Django-Webplattform zum schnellen Nachschlagen von Fakten, Quellen und Gegenargumenten zu häufigen Aussagen in Diskussionen.
## Voraussetzungen
- Python 3.10 oder höher
- pip
## Installation
### 1. Virtuelle Umgebung erstellen
```bash
cd /pfad/zu/ArgumentAtlas
python3 -m venv .venv
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
```
Falls `python3 -m venv` fehlschlägt, nutzen Sie explizit den System-Python:
```bash
/usr/bin/python3 -m venv .venv
```
### 2. Abhängigkeiten installieren
```bash
pip install -r requirements.txt
```
### 3. Datenbank migrieren
```bash
python manage.py migrate
```
### 4. Beispieldaten laden
```bash
python manage.py load_sample_data
```
Dies erstellt 7 Kategorien mit insgesamt 15 Behauptungen, Quellen und Gegenargumenten.
### 5. Admin-Zugang einrichten
```bash
python manage.py createsuperuser
```
### 6. Entwicklungsserver starten
```bash
python manage.py runserver
```
Die Anwendung ist unter [http://127.0.0.1:8000/](http://127.0.0.1:8000/) erreichbar.
Das Django-Admin-Interface liegt unter [http://127.0.0.1:8000/admin/](http://127.0.0.1:8000/admin/).
Falls `runserver` mit einem Python-Pfadfehler abbricht, starten Sie mit:
```bash
python manage.py runserver --noreload
```
## PostgreSQL (Produktion)
Setzen Sie folgende Umgebungsvariablen:
```bash
export DB_ENGINE=django.db.backends.postgresql
export DB_NAME=faktenkompass
export DB_USER=ihr_benutzer
export DB_PASSWORD=ihr_passwort
export DB_HOST=localhost
export DB_PORT=5432
```
Installieren Sie zusätzlich `psycopg2-binary` und führen Sie `migrate` erneut aus.
## Projektstruktur
```
ArgumentAtlas/
├── faktenkompass/ # Django-Projektkonfiguration
│ ├── settings.py
│ └── urls.py
├── claims/ # Haupt-App
│ ├── models.py # Category, Claim, Source, EvidenceFile, CounterArgument, Tag
│ ├── views.py
│ ├── urls.py
│ ├── admin.py
│ └── management/commands/load_sample_data.py
├── templates/ # Django-Templates (Bootstrap 5)
├── static/css/custom.css # Minimales Custom-Styling
├── requirements.txt
└── manage.py
```
## Funktionen
- **Startseite:** Kategorien als Karten mit Behauptungsanzahl
- **Kategorieseite:** Behauptungen filtern und durchsuchen
- **Behauptungsdetail:** Status, Kurzantwort, Nachweise (Bilder/PDFs), Evidenzlevel, Quellen, Gegenargumente, Tags
- **Globale Suche:** Behauptungen über alle Kategorien hinweg
- **Admin:** Alle Inhalte über Django Admin pflegen
- **SEO:** Sprechende URLs (`/kategorie/klimawandel/`, `/behauptung/...`)
## Inhalte verwalten
Melden Sie sich im Django-Admin an, um Kategorien, Behauptungen, Quellen, Gegenargumente und Schlagwörter anzulegen oder zu bearbeiten. Slugs werden automatisch aus Titeln generiert.
### Nachweise hochladen
Bei jeder Behauptung können im Admin unter **Nachweise** Dateien hochgeladen werden:
- **Bilder:** JPG, PNG, GIF, WebP, SVG (z. B. Grafiken, Screenshots, Diagramme)
- **PDFs:** Studien, Berichte, Faktenblätter
Optional: Titel, Bildunterschrift und Reihenfolge. Hochgeladene Dateien erscheinen auf der Behauptungsdetailseite im Abschnitt „Nachweise“.
Dateien werden unter `media/evidence/` gespeichert. In der Produktion muss der Webserver Medien-Dateien ausliefern (z. B. über Nginx).
## Lizenz
Projekt für den internen Gebrauch / Bildungszwecke.