QrGate ist ein modernes, webbasiertes Ticketing- und Zugangskontrollsystem für Veranstaltungen. Es ermöglicht den Verkauf, die Verwaltung und die Validierung von Tickets über QR-Codes und bietet eine benutzerfreundliche Oberfläche für Administratoren und Besucher.
QrGate ist ein umfassendes System für die Verwaltung von Veranstaltungen, Tickets und Zugangskontrollen. Es besteht aus einem Backend (Python/Quart) und einem Frontend (PHP/HTML/CSS/JavaScript) und bietet eine moderne, responsive Benutzeroberfläche.
- Ticketverkauf: Einfacher Kauf von Tickets über eine Weboberfläche mit Unterstützung für verschiedene Zahlungsmethoden (Barzahlung, PayPal).
- Zugangskontrolle: QR-Code-basierte Validierung von Tickets für den Einlass.
- Verwaltungsoberfläche: Umfassendes Admin-Panel für die Verwaltung von Veranstaltungen, Tickets und Statistiken.
- Mehrsprachigkeit: Unterstützung für mehrere Sprachen (Deutsch, Englisch).
- Responsive Design: Optimiert für Desktop und mobile Geräte.
-
Backend:
- Python 3.7+
- Quart (Web-Framework)
- Weitere Abhängigkeiten (siehe
backend/main.py)
-
Frontend:
- PHP 7.4+
- Webserver (Apache, Nginx)
- Composer (für PHP-Abhängigkeiten)
-
Repository klonen:
git clone https://github.com/rwolf2467/QrGate.git cd QrGate -
Backend einrichten:
cd backend pip install -r requirements.txt # Falls vorhanden
-
Frontend einrichten:
cd frontend composer install -
Konfiguration anpassen:
-
Backend:
backend/config/conf.pyclass API: port = 1654 backend_url = "https://qrgate-backend.example.com/" class Auth: auth_key = "YourGeneratedKeyHere" class Mail: smtp_server = "smtp.example.com" smtp_port = 587 smtp_user = "user@example.com" smtp_password = "smtp_password"
-
Frontend:
frontend/config.php<?php define('API_BASE_URL', 'http://localhost:1654'); define('API_KEY', 'YourGeneratedKeyHere'); define('PAYPAL_CLIENT_ID', 'YourPayPalClientID');
-
-
Webserver einrichten:
- Richten Sie den Webserver so ein, dass er auf das
frontend-Verzeichnis zeigt. - Stellen Sie sicher, dass die
backend/data-Verzeichnisse beschreibbar sind.
- Richten Sie den Webserver so ein, dass er auf das
-
Anwendung starten:
- Backend:
cd backend python main.py - Frontend: Öffnen Sie die Anwendung in Ihrem Browser.
- Backend:
QrGate/
├── backend/
│ ├── assets/ # Backend-Module (Ticketverwaltung, Validierung, etc.)
│ ├── config/ # Konfigurationsdateien
│ ├── data/ # Daten (Shows, Tickets)
│ └── main.py # Haupt-Backend-Server
│
├── frontend/
│ ├── admin/ # Admin-Oberfläche
│ ├── help/ # Hilfeseiten
│ ├── screens/ # Bildschirme für Veranstaltungen
│ ├── vote/ # Abstimmungssystem
│ ├── buy.php # Ticketkauf
│ ├── config.php # Frontend-Konfiguration
│ └── index.php # Hauptseite
│
└── README.md # Diese Datei
- Navigieren Sie zur Startseite der Anwendung.
- Wählen Sie die gewünschte Veranstaltung aus.
- Füllen Sie das Formular aus und bestätigen Sie den Kauf.
- Ihr Ticket wird per E-Mail zugesendet oder kann heruntergeladen werden.
- Melden Sie sich als Administrator an.
- Navigieren Sie zur Zugangskontrolloberfläche.
- Scannen Sie den QR-Code des Tickets.
- Das System validiert das Ticket und zeigt den Status an.
- Melden Sie sich als Administrator an.
- Navigieren Sie zum Admin-Panel.
- Verwalten Sie Veranstaltungen, Tickets und Benutzer.
- Sehen Sie sich Statistiken und Berichte an.
Das Admin-Panel bietet folgende Funktionen:
- Dashboard: Übersicht über verkaufte Tickets, verfügbare Tickets und geschätzte Einnahmen.
- Statistiken: Grafische Darstellung der Ticketverkäufe und Verfügbarkeit.
- Veranstaltungen verwalten: Bearbeiten von Veranstaltungseinstellungen.
- Termine verwalten: Hinzufügen, Bearbeiten und Löschen von Veranstaltungsterminen.
Die Backend-Konfiguration erfolgt in backend/config/conf.py. Hier können Sie Einstellungen wie den API-Port, die Backend-URL und die Authentifizierungsschlüssel anpassen.
Die Frontend-Konfiguration erfolgt in frontend/config.php. Hier können Sie Einstellungen wie die API-Basis-URL, den Authentifizierungsschlüssel und die PayPal-Client-ID anpassen.
Wir freuen uns über Beiträge zur Weiterentwicklung von QrGate. Bitte beachten Sie die folgenden Schritte:
- Forken Sie das Repository.
- Erstellen Sie einen neuen Branch für Ihre Änderungen.
- Implementieren Sie Ihre Änderungen und testen Sie sie gründlich.
- Erstellen Sie einen Pull Request mit einer Beschreibung Ihrer Änderungen.
Um die Tests auszuführen, verwenden Sie den folgenden Befehl:
cd backend
python -m pytest tests/- Python: PEP-8-Standards
- PHP: PSR-12-Standards
- JavaScript: ESLint-Standards
QrGate wird unter der MIT-Lizenz veröffentlicht. Weitere Informationen finden Sie in der Datei LICENSE.
Für Fragen oder Unterstützung können Sie ein Issue im Repository erstellen oder uns unter der folgenden E-Mail-Adresse kontaktieren:
- E-Mail: support@qrgate.com
© 2023 QrGate. Alle Rechte vorbehalten.



