No description
  • JavaScript 39.8%
  • HTML 24.5%
  • Python 21%
  • CSS 11.7%
  • Shell 2.8%
  • Other 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-02 18:23:15 +02:00
.agents Add project versioning rule in .agents/AGENTS.md 2026-08-02 18:23:15 +02:00
.github/workflows Release v0.9.0-beta: Beta versioning, Docker GitHub Actions, and UI version badge 2026-08-02 18:20:49 +02:00
data Initial commit: Mittelalterverein Verwaltungssystem 2026-08-02 12:39:46 +02:00
public Release v0.9.0-beta: Beta versioning, Docker GitHub Actions, and UI version badge 2026-08-02 18:20:49 +02:00
.gitignore Initial commit: Mittelalterverein Verwaltungssystem 2026-08-02 12:39:46 +02:00
app.py Update default club and tax office settings for Malleus Medicinae e.V. (Finanzamt Bayreuth) 2026-08-02 18:15:46 +02:00
create_proxmox_ct.sh Enable nesting=1 feature in LXC creation script 2026-08-02 13:01:06 +02:00
docker-compose.yml Release v0.9.0-beta: Beta versioning, Docker GitHub Actions, and UI version badge 2026-08-02 18:20:49 +02:00
Dockerfile Initial commit: Mittelalterverein Verwaltungssystem 2026-08-02 12:39:46 +02:00
install.sh Update install.sh repo check 2026-08-02 13:11:39 +02:00
README.md Add Proxmox LXC 1-command installer scripts (install.sh and create_proxmox_ct.sh) 2026-08-02 12:43:12 +02:00
requirements.txt Initial commit: Mittelalterverein Verwaltungssystem 2026-08-02 12:39:46 +02:00
VERSION Release v0.9.0-beta: Beta versioning, Docker GitHub Actions, and UI version badge 2026-08-02 18:20:49 +02:00

⚔️ Mittelalterverein Verwaltungssystem (Codex)

Ein modernes, leichtgewichtiges und benutzerfreundliches Web-Verwaltungstool speziell zugeschnitten auf Mittelaltervereine (unter 100 Mitglieder).

Das System läuft ohne komplexe Abhängigkeiten lokal oder als LXC Container / Docker auf Proxmox VE.


🌟 Hauptfunktionen

👥 1. Mitgliederverwaltung & Jubiläen

  • Alle wichtigen Stammdaten: Name, Adresse, Geburtsdatum, Eintrittsdatum, Kontakt und Notizen.
  • Automatische Alters- & Jubiläumsberechnung: Übersicht über runde Mitglieds-Jubiläen (5, 10, 15, 20, 25 Jahre) und bevorstehende Geburtstage.
  • Aktivitäts-Status & 11-Monate-Regel:
    • Erfassung des Feldes "Zuletzt aktiv am".
    • Automatische Passiv-Schaltung: Mitglieder, die länger als 11 Monate inaktiv waren, schalten automatisch in den Status Passiv (X Mon. inaktiv).
    • Bei neuer Aktivität schaltet das System automatisch zurück auf Aktiv.

👨‍👩‍👧‍👦 2. Familien- & Beitragsverwaltung

  • Automatische Familien-Erstellung: Wird beim Anlegen eines Mitglieds die Option "Familienhauptmitglied (Zahler)" gewählt, wird automatisch die Familie Familie [Nachname], [Vorname] im System angelegt.
  • Erfasste Beitragssätze & Automatische Vorauswahl:
    • Standard Einzelbeitrag: 9,00 € / Jahr (automatisch vorausgefüllt)
    • Familienhauptmitglied (Zahler): 18,00 € / Jahr (automatisch vorausgefüllt)
    • Familienmitglied: 0,00 € / Jahr (über Hauptmitglied bezahlt)
  • Konfigurationsmenü: Die Beitragssätze können bei künftigen Beitragserhöhungen in den Einstellungen flexibel angepasst werden.

📜 3. Digitales Kassenbuch & Rechtssichere Spendenbescheinigungen (§ 50 EStDV)

  • Einnahmen & Ausgaben: Chronologische Erfassung mit laufendem Kassenstand, Beleg-Nummern und Kategorien.
  • Export-Funktionen:
    • 📄 CSV-Export: Für Excel, LibreOffice oder Buchhaltungssoftware.
    • 📄 PDF-Export: Amtlicher Kassenbericht mit Bilanz-Übersicht und Unterschriftenfeldern für Kassenwart & 1. Vorsitzenden.
  • Rechtssichere Spendenquittungen (Deutschland § 50 EStDV):
    • Geldspenden & Sachspenden: Spendenquittungen für Bar-/Überweisungsspenden sowie Sachspenden (z. B. neue Vereinskasse, Zelt, Ausrüstung) mit Herkunft & Wertermittlung.
    • Für Privatpersonen & Firmen: Ausstellungsoption für Privatpersonen oder Firmen/Unternehmen (juristische Personen zur steuerlichen Geltendmachung als Betriebsausgabe).
    • Betrag in Worten: Automatische Konvertierung des Spendenbetrags in deutsche Wortform ("Einhundertfünfzig Euro").

📅 4. Termine & Homepage-Spiegelung

  • Erfassung von Vereinsaktivitäten (Trainings, Ausflüge, Schaukampf-Auftritte, Lager).
  • Homepage-Mirroring: Öffentliche Termine können per REST-API oder fertigem HTML-Embed-Snippet auf die Vereins-Homepage gespiegelt werden.

🚀 Installation & Bereitstellung

👑 Option 1: Proxmox VE (Automatischer 1-Befehl-LXC Container)

Sie können die Vereinsverwaltung auf zwei Arten direkt in Proxmox installieren:

Variante A: In die Proxmox Host Shell einkopieren (Erstellt automatisch den LXC Container)

Führen Sie diesen Befehl direkt in der Proxmox Web-Shell Ihres Nodes (pve) aus:

bash <(curl -sSL https://raw.githubusercontent.com/Snakepit81/vereinsverwaltung/main/create_proxmox_ct.sh)

Das Skript lädt automatisch das Debian 12 Template herunter, erstellt einen neuen LXC Container (1 CPU, 512MB RAM, 4GB Disk), richtet den Systemd-Autostart ein und gibt die fertige IP-Adresse aus.

Variante B: In einen bestehenden LXC Container (Debian/Ubuntu CT)

Führen Sie diesen Befehl in der Konsole Ihres LXC Containers aus:

bash <(curl -sSL https://raw.githubusercontent.com/Snakepit81/vereinsverwaltung/main/install.sh)

Option 2: Docker & Docker Compose

docker-compose up -d

Oder manuell mit Docker CLI:

docker build -t vereinsverwaltung .
docker run -d -p 5000:5000 -v $(pwd)/data:/app/data --name vereinsverwaltung vereinsverwaltung

Option 3: Lokal auf dem PC ausführen (Python)

  1. Repository klonen:
    git clone https://github.com/Snakepit81/vereinsverwaltung.git
    cd vereinsverwaltung
    
  2. Abhängigkeiten installieren & starten:
    pip install -r requirements.txt
    python app.py
    
  3. Im Browser öffnen: 👉 http://localhost:5000

🛠️ Technologie-Stack

  • Backend: Python 3.11, Flask, SQLite3
  • Frontend: Modernes Glassmorphism-Design mit HTML5, Vanilla CSS3 (Custom Design Tokens), JavaScript (ES6+), FontAwesome 6
  • Container / Daemon: Docker, Gunicorn WSGI Server, Systemd Service

📄 Lizenz

Dieses Projekt steht unter der MIT-Lizenz.