Files
2026-03-05 20:01:48 +01:00

70 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Offene Innovation SH Projektplattform
Prototyp einer Webplattform für das [Landesprogramm Offene Innovation](https://digitalhub.sh/de/call-for-concept-zum-landesprogramm-offene-innovation) in Schleswig-Holstein. Verwaltungen können hier Projekte einreichen, Anwender können Projekte suchen und sich als Mitarbeitende bewerben.
## Funktionen
- **Projekte durchsuchen** Suche nach Titel/Beschreibung, Filter nach Kategorie
- **Projekt einreichen** Formular für Behörden und Organisationen
- **Bewerben** Anwender können sich für Projekte als Mitarbeitende bewerben
- **Demo-Daten** 6 vorkonfigurierte Beispielprojekte
## Voraussetzungen
- Python 3.11+
- Optional: Docker & Docker Compose
## Lokale Installation
```bash
# Virtual Environment aktivieren
.\.venv\Scripts\Activate.ps1 # Windows PowerShell
# Abhängigkeiten installieren
pip install -r requirements.txt
# Demo-Projekte laden (beim ersten Start)
python seed_demo_data.py
# Server starten
flask run
```
Die Anwendung läuft unter **http://127.0.0.1:5000**.
## Docker
```bash
# Bauen und starten
docker compose up --build
# Im Hintergrund
docker compose up -d --build
```
Die Anwendung ist unter **http://localhost:5000** erreichbar. Die SQLite-Datenbank wird in einem Volume persistiert.
## Projektstruktur
```
├── app.py # Flask-App und Routes
├── models.py # SQLAlchemy-Modelle (Projekt, Bewerbung)
├── seed_demo_data.py # Demo-Projekte
├── requirements.txt
├── Dockerfile
├── docker-compose.yml
├── templates/ # Jinja2-Templates
├── static/ # CSS
└── instance/ # SQLite-Datenbank (wird automatisch erstellt)
```
## Technologie-Stack
- **Backend:** Flask, SQLAlchemy
- **Datenbank:** SQLite
- **Frontend:** Jinja2, Bootstrap 5
## Lizenz
Open Source siehe Projekt-Lizenz.