CV-Assisted Smart Parking & Payments
A full-stack, multi-tenant smart parking platform that automates the gate: a computer-vision service reads the vehicle type from a camera, the system opens a parking session, computes the tariff, and takes payment by cash, dynamic QRIS, or RFID membership — wired to real gate hardware (RFID reader, ticket printer, camera) and rolled up into operator dashboards. (Freelance project.)
What it does. The platform runs parking operations end to end. At the gate, a camera captures the
incoming vehicle, a computer-vision service classifies it (car / motorcycle), the system opens a
parking record, computes the tariff from the vehicle type and configured rates, and on exit
charges and closes the session — supporting cash, dynamic QRIS QR payments, and RFID-card
membership. A ticket is printed at the gate. Operators work through a web POS and
dashboards (revenue, traffic, vehicle mix), and the system is multi-tenant — several parking
businesses (usaha) run on one deployment with their own tariffs, members, and users.
Manual gate operations and disconnected tools created real friction:
usaha (business) scopes tariffs, members, users, and reporting so many
operators share one deployment.| Layer | Technologies |
|---|---|
| Web app / API | Next.js (React, TypeScript), Prisma ORM, API routes |
| Database | PostgreSQL |
| Computer vision | FastAPI CV service (Pillow image processing; TensorFlow variant), gate-image classification |
| Payments | Dynamic QRIS QR payments, RFID card membership, cash |
| Edge / hardware | USB RFID reader, ticket printer (status checks), camera/scanner, member + image sync |
| Storage | MinIO object storage (gate images, exports) |
| Dashboards | Chart.js (revenue · traffic · vehicle mix) |
| Observability | Prometheus (prometheus-fastapi-instrumentator) + Grafana |
| Infra | Docker / docker-compose, nginx, GitHub Actions CI/CD, scheduler |
Disclaimer: sample visuals may contain anonymized, simulated, or non-production values for presentation purposes.