Printing Kiosk — Document Printing Platform
A client project building a printing-kiosk system split into two independently deployable pieces: a central management server that handles the job queue, payments, and token generation, and a user-facing web dashboard where customers upload documents, choose print options, and pay before printing.
Features
- Document upload and print-option selection through a React dashboard
- bKash payment integration for Bangladesh mobile financial services
- Centralized print job queue and token generation handled server-side
- Clerk-based authentication for the user dashboard
- Dockerized PostgreSQL backend with Alembic-managed schema migrations
Tech Stack
- Backend: FastAPI, PostgreSQL (Docker), SQLAlchemy, Alembic
- Frontend: React, TypeScript, Vite, Tailwind CSS, Clerk (Auth)
- Payments: bKash API integration
What I Learned
- Integrating a local payment gateway (bKash) into a transactional job queue
- Designing a token-based handoff between a web dashboard and physical print hardware
- Splitting a client system into independently deployable server and dashboard services