This project automates the reprographics (printing) process using a web application built with Flask, MongoDB, and Google SSO. It allows users to submit print jobs, verify payments, and manage a print queue efficiently.
To better understand how the system works, watch the demo video below:
Link: https://drive.google.com/file/d/1LU1_ihK3KvxIj1UzAfuPLG3Ozp_OBxKv/view?usp=sharing
- User Authentication: Google SSO for secure login.
- Print Job Submission: Users can upload documents with details like the number of copies, black & white/color, and duplex printing.
- Payment Verification: Extracts receipt ID from the transaction screenshot using OpenCV and PyTesseract.
- Queue System: Documents are sent to a queue for manual verification and printing.
- MongoDB Integration: Stores user details, print job data, and transaction records.
- Organized Data Management: All submitted jobs and transactions are properly stored, reducing errors and improving efficiency.
Before implementing this system, the reprographics process was manual, leading to inefficiencies and delays. Now:
- Time Savings: The new system saves 2-3 minutes per print job by automating payment verification and job submission.
- Better Organization: All print jobs and payment records are systematically stored, reducing errors and improving accountability.
- Faster Verification: Instead of manually checking receipts, OCR technology extracts transaction details automatically.
- Backend: Flask (Python)
- Frontend: JavaScript, HTML, CSS
- Database: MongoDB
- OCR Processing: OpenCV & PyTesseract
- Authentication: Google SSO
- Python (>=3.8)
- MongoDB
- Google Cloud OAuth Credentials (for Google SSO)
-
Clone the Repository
git clone https://github.com/J11tendra/FLAME-Reprographics.git cd reprographics -
Set Up Virtual Environment
python -m venv venv source venv/bin/activate # On Windows, use 'venv\Scripts\activate'
-
Install Dependencies
pip install -r requirements.txt
-
Configure Environment Variables Create a
.envfile in the root directory and add:MONGO_URI=mongodb://localhost:27017/reprographics GOOGLE_CLIENT_ID=your-google-client-id GOOGLE_CLIENT_SECRET=your-google-client-secret FLASK_SECRET_KEY=your-secret-key
-
Run the Application
flask run
The app will be available at
http://127.0.0.1:5000/.
- Login with Google to access the portal.
- Upload documents and submit print jobs.
- Verify payments using transaction screenshots.
- Admins approve jobs from the queue and send them for printing.
Feel free to fork the repository and submit pull requests.
This project is licensed under the GPL-3.0 license.




