A web-based application designed to validate QR codes for access control systems, ensuring secure and efficient entry management.
- QR Code Scanning: Quickly scan QR codes from a physical scanner to verify ticket codes over a serial port.
- Pretix integration: Tickets are validated against the events in Pretix
- Preprinted tickets and codes: Accepts a CSV of valid ticket codes where ticketsd are preprinted or handed out in the venue
- Flexible business logic: Set business rules on multiple scans and events
- Real-Time Validation: Instant feedback on the validity of scanned codes.
- (TBC)User-Friendly Interface: Intuitive design for seamless user experience.
- Frontend (tbc): HTML, CSS, JavaScript
- Backend: Node.js (Express.js)
- Database: MongoDB
- APi connections: pretix for ticket validation
- Node.js (v18 or higher)
- npm (v10.8.2 or higher)
- Mongod (v4.4.18)
-
Clone the repository and install
git clone https://github.com/MarkPajak/turnstile-qr-validator-app.git cd turnstile-qr-validator-app npm install -
Setup secret folder and port emulator:
npm run setup npm run install-socat npm run port-emulate
-
Setup secret folder and api_key:
add pretix API key to settings/pretix_settings.json
-
Start the app in a new terminal window
npm start
-
run a test ticket in a new terminal window
npm run port-command